Node.js + ExpressJS + Joi + Typeorm + Typescript + JWT + ES2015 + Clustering + Tslint + Mocha + Chai
MIT License
/app
/controllers (Controllers of the app)
/middlewares (Middlewares for the routes of the app)
/routes (Routes for Controllers of the app)
/service (Services for using in any Controller)
/entity (Models configuration for use)
/repository (Custom queries)
/config
/Router.ts (Config file for Routing)
/Database (DB configuration for use)
/Server.ts (Server configuration)
config.ts (Config file for the app)
tsconfig.json (File configuration typescript)
tslint.json (File configuration rules typescript)
Index.ts (Main file to start the app)
First clone this repository.
[email protected]:camesine/Typescript-restful-starter.git
Download all dependencies.
npm install
Edit the file ./env
and add config database like:
#
# APPLICATION
#
APP_NAME=restful-starter-server
APP_SCHEMA=http
APP_HOST=localhost
APP_PORT=3000
APP_SECRET=HltH3R3
#
# MySQL DATABASE
#
# mysql or mariadb
TYPEORM_CONNECTION=mariadb
TYPEORM_HOST=localhost
TYPEORM_PORT=3306
TYPEORM_USERNAME=root
TYPEORM_PASSWORD=root
TYPEORM_DATABASE=test
TYPEORM_SYNCHRONIZE=true
TYPEORM_LOGGING=error
TYPEORM_LOGGER=advanced-console
#
# PATH STRUCTRUE
#
TYPEORM_ENTITIES=app/models/**/*.ts
TYPEORM_ENTITIES_DIR=app/models
When execute any of this commands the app start with clustering, creating many cluster apps depending of the numbers of CPU's your computer had.
npm run dev
npm test
npm start