grunt-couchapp/README.md

91 lines
2.4 KiB
Markdown

# grunt-couchapp
A grunt plugin for building and installing couchapps
## Getting Started
Install this grunt plugin next to your project's
[grunt.js gruntfile][getting_started] with: `npm install
grunt-couchapp`
Then add this line to your project's `grunt.js` gruntfile:
```javascript
grunt.loadNpmTasks('grunt-couchapp');
```
[grunt]: https://github.com/cowboy/grunt
[getting_started]: https://github.com/cowboy/grunt/blob/master/docs/getting_started.md
## Documentation
You'll want to add some configuration for the plug-in. This plugin
provides three tasks, `mkcouchdb` to create new databases, `rmcouchdb`
to delete all data and drop an existing database, and `couchapp`,
which installs a specified couchapp into the database.
mkcouchdb: {
demo: {
db: 'http://localhost:5984/grunt-couchapp-demo'
}
},
rmcouchdb: {
demo: {
db: 'http://localhost:5984/grunt-couchapp-demo',
options: {
okay_if_missing: true
}
}
},
couchapp: {
demo: {
db: 'http://localhost:5984/grunt-couchapp-demo',
app: './demo/app.js'
}
}
As a stylistic note, all of the commands take the same info, so it's
possible to write in your configuration file:
couch_config = {
demo: {
db: 'http://localhost:5984/grunt-couchapp-demo',
app: './demo/app.js',
options: {
okay_if_missing: true
}
}
}
grunt.initConfig({
...
mkcouchdb: couch_config,
rmcouchdb: couch_config,
couchapp: couch_config,
...
});
Note, however, that if you call 'rmcouchdb' without a sub-argument, in
keeping with grunt's standards, it will drop *all* of your databases!
## Demo
It is possible to run the entire toolchain (drop, initialize, and
install) with the grunt.js file by calling `grunt demo`. As long as
you have a local couchdb running in admin-party mode, and browse to
`http://localhost:5984/grunt-couchapp-demo/_design/app/index.html`
You should get back a happy message.
## Contributing
In lieu of a formal styleguide, take care to maintain the existing
coding style. Add unit tests for any new or changed
functionality. Lint and test your code using [grunt][grunt].
## License
Copyright (c) 2012 Ken Elf Mathieu Sternberg
Licensed under the MIT license.