Shingon
A command line interface for developing Meteor apps using Mantra.
A more opinionated version of the official Mantra CLI.
Installation
npm install -g shingon
Meteor version 1.3 or higher needs to be present in your machine to create and run apps with shingon.
Documentation
The available commands are:
Currently, shingon expects you to be in the app root directory.
shingon create [path]
alias: c
Create a Meteor application using Mantra spec under path
.
It performs the following tasks:
- Create a Meteor app
- Prepare a skeleton structure for Mantra and add
.eslintrc
and.gitignore
- Add Meteor and NPM dependencies
- Install NPM dependencies
Options
--verbose, -v
Log the output of the scripts in the console, rather than silencing them.
shingon generate [type] [name]
alias: g
Generate a file of type
and name specified name
.
type
Possible values are:
action
component
By default, a stateless component is generated. By using --use-class
option
(alias -c
), you can generate a ES2015 class extending React.Component
.
shingon g component core:user_list -c
shingon adds JSS and React JSS to allow styling in the component. [Not in Mantra-CLI]
shingon also generates a storybook-file for each component. It's curently not possible to disable this feature (PR welcome).
container
Generates a container
and its corresponding component
.
collection
Use --schema
option (alias -s
) to specify the schema solution to use for
your Mongo collections. Currently, you can specify collection2
, and astronomy
.
shingon g collection books -s collection2
method
publication
module
For action
, component
, and container
, tests will also be generated.
name
If the type
is one of action
, component
, or container
, the name should
follow the format moduleName:entityName
. This is because Mantra is modular
on the client side, and all files of those types belong to a module.
Example
shingon generate component core:posts
shingon generate publication users
shingon generate method comments
Automatic update to index.js
For action
, collection
, method
, and publication
, the command automatically
inserts import
and export
statements to the relevant index.js
file.
shingon destroy [type] [name]
alias: d
This command removes files.
Destroys all files that its counterpart mantra generate
command would generate.
You can provide all types
supported by the generate
command.
Contributor Guide
- Clone this repository and run
npm install
. - Write your code under
/lib
. npm run-script compile
compiles your ES2015 code in/lib
into/dist
.npm test
compiles the code and runs the tests.
License
MIT