@agatee/cli
v1.3.5-beta.1
Published
CLI for Agatee App
Downloads
98
Maintainers
Readme
Agatee CLI
Prerequisites
Node 8.9 or higher, together with NPM 5.5.1 or higher. Typescript and ts-node.
New realese in version 1.3.0
Now you can create an app with graphql api style To create new app with graphql api
gat create my-app -api graphql
or add graphql feature in an existing app
gat add graphql
- New argument parser for the CLI Check the documentation for more informations
Table of Contents
- Installation
- Generating a New Project
- Adding Mongoose
- Generating MVC Components with CRUD endpoint
- Adding Socket.io
- Generating socket instance
- Documentation
Installation
npm install -g @agatee/cli
Generating new project
Generating and serving a new project
gat create PROJECT-NAME
cd PROJECT-NAME
gat serve
You can specify the port to use by the app by adding --port ${PORT} params on serving
Adding Mongoose
Stop serving the app by hitting ^C then :
gat add mongoose
4 lines will be added to the .env file to configure the connection to database :
...
DB_HOST=localhost
DB_PORT=27017
DB_PASSWORD=
DB_USERNAME=
DATABASE=agatee
You can also set your db config using those options
gat add mongoose --db-uri ${SRV_STRING_CONNECTION}
Generating MVC Components
Generate MVC component named user with CRUD endpoint
gat g c user -mm -e CRUD
- -mm (or --mongoose-model) for adding mongoose model file
- -e (or --endpoint) for addinng CRUD endpoint
After generating the new component just add the router's component to app.ts to make the new component reachable
...
import { UserRouter } from './components/user/user.router';
...
@GatModule({
routes: [
UserRouter
],
middlewares
})
Then the new component is now reachable from http://localhost:3000/api/user
using method POST for creating, GET for reading, PUT for updating and DELETE for deleting
Adding socket.io
gat add socket.io
Then add MainSocket to the GatModule's imports decorator in app.ts
...
import { MainSocket } from "./modules/socket/main.socket";
...
@GatModule({
routes: [
UserRouter
],
middlewares,
imports: [MainSocket]
})
Now the socket server is reachable from
http://localhost:3001
You can change the socket port in the .env file
Generating socket instance
To generate socket instance named chat, hit :
gat g socket-i chat
Then add the new socket instance to the @GatModule imports in app.ts
...
import { MainSocket } from "./modules/socket/main.socket";
import { ChatSocket } from "./modules/socket/chat.socket";
...
@GatModule({
routes: [
UserRouter
],
middlewares,
imports: [
MainSocket,
ChatSocket
]
})
Now the socket instance is reachable from http://localhost:3001/chat