simple starter kit express
- Database orm sequelize
- Validators router
- Multilanguage i18n (headers: accept-language)
- ES6 Javascript
- Seeder and migration table user
- Basic Login
- JWT token
- Puml format documentation
- Eslint
- User CRUD and validate user token
- Unit test
- Toggle feature rabbitmq
- Toggle feature redis
- Sweager API documentation
- Error Logs
- run
npm install
- copy
.env.example
to.env
and set up your local configuration and local database, default: mysql - run
npm install -g sequelize-cli mysql2
and then runsequelize db:migrate
- email:
[email protected]
- password:
password
├── database
│ ├── config
│ ├── migrations
│ └── seeders
├── documents
│ └── database.puml
├── public
│ └── style.css
├── src
│ ├── bin
│ │ ├── amqpListener.js #
│ │ └── server.js #
│ ├── controllers
│ │ ├── amqp
│ │ │ └── usersController.js # for listener rabbitmq
│ │ ├── api
│ │ │ ├── authController.js
│ │ │ └── usersController.js
│ ├── handler
│ │ ├── auth
│ │ │ └── login.js
│ │ ├── users
│ │ │ └── crud.js
│ ├── libs # libs or library
│ │ ├── lang
│ │ │ ├── en.json
│ │ │ └── id.json
│ │ ├── middlewares
│ │ │ ├── validators
│ │ │ │ ├─ authValidator.js
│ │ │ │ ├─ usersValidator.js
│ │ │ │ ├─ validateNotFound.js
│ │ │ │ └─ validateValidator.js
│ │ │ └── authMiddleware.js
│ │ ├── providers
│ │ │ ├── rabbitMQ
│ │ │ │ ├── listener
│ │ │ │ │ ├─ index.js
│ │ │ │ │ └─ usersListener.js
│ │ │ │ └── index.js
│ │ │ └── redis.js
│ │ ├── constant.js
│ │ └── passwordHash.js
│ ├── models
│ │ ├── index.js
│ │ └── users.js
│ ├── routes
│ │ ├── amqp
│ │ │ ├── index.js
│ │ │ └── usersRouter.js
│ │ ├── api
│ │ │ ├── authRouter.js
│ │ │ ├── index.js
│ │ │ └── usersRouter.js
│ │ └── index.js
│ └── app.js
├── tests
│ ├── authTest.js
│ ├── rabbitMQTest.js
│ ├── usersAmqpTest.js
│ └── usersTest.js
├── views
│ ├── error.hbs
│ └── index.hbs
├── .env-example
├── .gitignore
├── .sequelizerc
├── package-lock.json
├── package.json
└── README.md