Node/Express API to integrate with a Barber Shop
- Node.js + Express []
- JWT Authentication using jsonwebtoken []
- Schema validation using Yup []
- Password encryption using bcrypt []
- Background jobs using queues - be-queue []
- Server side mails using nodemailer []
- Email templates using handlebars []
- Use https://mailtrap.io to send emails on Development environment
- Use Sentry as bug tracker/monitoring []
- Custom error handler middleware with styled errors using Youch []
- .env variables using dotenv []
Databases
- postgres (sequelize) for Authentication
- redis for background processing - controll job queues
- mongoDB (mongoose) for Notifications
Features
- Use eslint/prettier last version to integrate with VSCode (fix issue with Eslint 6+ and Prettier)
- Use Sucrase [https://github.com/alangpierce/sucrase] as a super-fast alternative to Babel
- Create Migrations
yarn sequelize migration:create --nane=<create-users>
- Perform Migrations
yarn sequelize db:migrate
- Undo Migrations
# last migrated file
yarn sequelize db:migrate:undo
# all migrations
yarn sequelize db:migrate:undo:all