I use node v14.15.1
for this project.
- Clone this project
- Run
yarn dev
- Dependencies Injection with typedi
- Node, Express, Typescript
- MongoDB, Mongoose
- Jsonwebtoken for auth
- Class Validator validation for classes
- Node Bcrypt for encrypting password
- @sendgrid/mail send mail with sengrid
- Event Dispatcher
- Testing with jest
- Eslint & Prettier
- express-async-handler handler async routes
- Winston for logger
- Dependency Injection service with typedi
Click to expand!
├── LICENSE
├── logs
│ ├── all.log
│ └── error.log
├── nodemon.json
├── package.json
├── package-lock.json
├── Procfile
├── README.md
├── src
│ ├── config
│ │ └── index.ts
│ ├── decorators
│ │ └── eventDispatcher.ts
│ ├── global.d.ts
│ ├── loaders
│ │ ├── dependencyInjector.ts
│ │ ├── events.ts
│ │ ├── express.ts
│ │ ├── index.ts
│ │ └── mongoose.ts
│ ├── middleware
│ │ ├── checkIdMongo.ts
│ │ ├── errorRequest.ts
│ │ ├── index.ts
│ │ ├── notFound.ts
│ │ ├── requestLogger.ts
│ │ ├── userAuth.ts
│ │ └── validation.ts
│ ├── models
│ │ └── users.ts
│ ├── routes
│ │ ├── api
│ │ │ └── user.ts
│ │ └── index.ts
│ ├── server.ts
│ ├── services
│ │ ├── mailer.ts
│ │ └── userService.ts
│ ├── subscribers
│ │ ├── event.ts
│ │ └── user.ts
│ ├── types
│ │ ├── appRo.ts
│ │ ├── dependencyInjectors.ts
│ │ ├── express.ts
│ │ └── user.ts
│ └── utils
│ └── logger.ts
├── test
│ └── services
├── tsconfig.json
├── yarn-error.log
└── yarn.lock