generator-koa-api 
Yeoman generator
Getting Started
Not every new computer comes with a Yeoman pre-installed. He lives in the npm package repository. You only have to ask for him once, then he packs up and moves into your hard drive. Make sure you clean up, he likes new and shiny things.
npm install -g yo
Usage
Yeoman travels light. He didn't pack any generators when he moved in. You can think of a generator like a plug-in. You get to choose what type of application you wish to create, such as a Backbone application or even a Chrome extension.
To install generator-koa-api from npm, run:
npm install -g generator-koa-api
Finally, initiate the generators:
yo koa-api your-api
yo koa-api:api /tasks
yo koa-api:api /tasks/results
yo koa-api:model task
After edit your configuration in config/
, run:
npm test
npm start
Development
6 steps to contribute:
# 1. Fork and clone this repo and `cd` to the repo
# 2. Link your `bin`s
npm link
# 3. Setup database for test
mysql -e 'create database database_test;'
# 4. Edit code and test
# 5. Run tests
npm test
# 6. Create pull request for your changes
Useful Tricks
- After running
npm start
, you can find your service's PID
by run pgrep your-api
because your starter file was named by name
field in your
package.json
. - Use
debug
for logging, so you can switch logs with DEBUG
environment
variable value. - All generated routers have setted channel for
DEBUG
with path (e.g.,
your-api:api:/users). - Print
SQLs
by setting DEBUG=your-api:models
- Table names for models are named by filenames in
models/
. - Use
bin/sync-models.js
to create tables for models. - You can use your models in your router with
this.app.models
. - Put your service clients/loaders into
lib/loaders/
, so your can manage them
with best practice. - Folders in
api/
can be copy/move to anywhere with the same structure and run without any code.
Getting To Know Yeoman
Yeoman has a heart of gold. He's a person with feelings and opinions, but he's very easy to work with. If you think he's too opinionated, he can be easily convinced.
If you'd like to get to know Yeoman better and meet some of his friends, Grunt and Bower, check out the complete Getting Started Guide.
License
MIT