├── .env.example ├── .eslintrc ├── .gitignore ├── .nvmrc ├── .prettierrc ├── LICENSE ├── README.md ├── package.json ├── src ├── @types │ └── global.d.ts ├── constants │ └── index.ts ├── contracts │ ├── auth.ts │ ├── jwt.ts │ ├── media.ts │ ├── request.ts │ └── user.ts ├── controllers │ ├── authController.ts │ ├── index.ts │ ├── mediaController.ts │ └── userController.ts ├── dataSources │ ├── index.ts │ ├── mongoose.ts │ └── redis.ts ├── guards │ ├── authGuard.ts │ └── index.ts ├── i18n │ ├── index.ts │ └── translations │ │ ├── en.json │ │ └── ka.json ├── index.ts ├── infrastructure │ ├── image.ts │ ├── logger.ts │ └── upload.ts ├── mailer │ ├── index.ts │ ├── mailer.ts │ └── userMail.ts ├── middlewares │ ├── authMiddleware.ts │ ├── corsMiddleware.ts │ ├── index.ts │ ├── notFoundMiddleware.ts │ └── uploadSingleImageMiddleware.ts ├── models │ ├── index.ts │ ├── media.ts │ ├── resetPassword.ts │ ├── user.ts │ └── verification.ts ├── routes │ ├── auth.ts │ ├── index.ts │ ├── media.ts │ └── users.ts ├── services │ ├── index.ts │ ├── mediaService.ts │ ├── resetPasswordService.ts │ ├── userService.ts │ └── verificationService.ts ├── storage │ └── .gitkeep ├── templates │ ├── resetPassword │ │ └── html.ejs │ ├── signUp │ │ └── html.ejs │ ├── successfullyDeleted │ │ └── html.ejs │ ├── successfullyUpdatedEmail │ │ └── html.ejs │ ├── successfullyUpdatedPassword │ │ └── html.ejs │ ├── successfullyUpdatedProfile │ │ └── html.ejs │ ├── successfullyVerified │ │ └── html.ejs │ └── verification │ │ └── html.ejs ├── utils │ ├── cryptoString.ts │ ├── dates.ts │ ├── hash.ts │ ├── headers.ts │ ├── jwt.ts │ ├── maths.ts │ └── paths.ts └── validations │ ├── authValidation.ts │ ├── index.ts │ └── userValidation.ts ├── tsconfig.json └── yarn.lock /.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/.env.example -------------------------------------------------------------------------------- /.eslintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/.eslintrc -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/.gitignore -------------------------------------------------------------------------------- /.nvmrc: -------------------------------------------------------------------------------- 1 | v19.1.0 -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/.prettierrc -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/README.md -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/package.json -------------------------------------------------------------------------------- /src/@types/global.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/@types/global.d.ts -------------------------------------------------------------------------------- /src/constants/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/constants/index.ts -------------------------------------------------------------------------------- /src/contracts/auth.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/contracts/auth.ts -------------------------------------------------------------------------------- /src/contracts/jwt.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/contracts/jwt.ts -------------------------------------------------------------------------------- /src/contracts/media.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/contracts/media.ts -------------------------------------------------------------------------------- /src/contracts/request.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/contracts/request.ts -------------------------------------------------------------------------------- /src/contracts/user.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/contracts/user.ts -------------------------------------------------------------------------------- /src/controllers/authController.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/controllers/authController.ts -------------------------------------------------------------------------------- /src/controllers/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/controllers/index.ts -------------------------------------------------------------------------------- /src/controllers/mediaController.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/controllers/mediaController.ts -------------------------------------------------------------------------------- /src/controllers/userController.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/controllers/userController.ts -------------------------------------------------------------------------------- /src/dataSources/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/dataSources/index.ts -------------------------------------------------------------------------------- /src/dataSources/mongoose.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/dataSources/mongoose.ts -------------------------------------------------------------------------------- /src/dataSources/redis.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/dataSources/redis.ts -------------------------------------------------------------------------------- /src/guards/authGuard.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/guards/authGuard.ts -------------------------------------------------------------------------------- /src/guards/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/guards/index.ts -------------------------------------------------------------------------------- /src/i18n/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/i18n/index.ts -------------------------------------------------------------------------------- /src/i18n/translations/en.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/i18n/translations/en.json -------------------------------------------------------------------------------- /src/i18n/translations/ka.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/i18n/translations/ka.json -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/index.ts -------------------------------------------------------------------------------- /src/infrastructure/image.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/infrastructure/image.ts -------------------------------------------------------------------------------- /src/infrastructure/logger.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/infrastructure/logger.ts -------------------------------------------------------------------------------- /src/infrastructure/upload.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/infrastructure/upload.ts -------------------------------------------------------------------------------- /src/mailer/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/mailer/index.ts -------------------------------------------------------------------------------- /src/mailer/mailer.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/mailer/mailer.ts -------------------------------------------------------------------------------- /src/mailer/userMail.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/mailer/userMail.ts -------------------------------------------------------------------------------- /src/middlewares/authMiddleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/middlewares/authMiddleware.ts -------------------------------------------------------------------------------- /src/middlewares/corsMiddleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/middlewares/corsMiddleware.ts -------------------------------------------------------------------------------- /src/middlewares/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/middlewares/index.ts -------------------------------------------------------------------------------- /src/middlewares/notFoundMiddleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/middlewares/notFoundMiddleware.ts -------------------------------------------------------------------------------- /src/middlewares/uploadSingleImageMiddleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/middlewares/uploadSingleImageMiddleware.ts -------------------------------------------------------------------------------- /src/models/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/models/index.ts -------------------------------------------------------------------------------- /src/models/media.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/models/media.ts -------------------------------------------------------------------------------- /src/models/resetPassword.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/models/resetPassword.ts -------------------------------------------------------------------------------- /src/models/user.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/models/user.ts -------------------------------------------------------------------------------- /src/models/verification.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/models/verification.ts -------------------------------------------------------------------------------- /src/routes/auth.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/routes/auth.ts -------------------------------------------------------------------------------- /src/routes/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/routes/index.ts -------------------------------------------------------------------------------- /src/routes/media.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/routes/media.ts -------------------------------------------------------------------------------- /src/routes/users.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/routes/users.ts -------------------------------------------------------------------------------- /src/services/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/services/index.ts -------------------------------------------------------------------------------- /src/services/mediaService.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/services/mediaService.ts -------------------------------------------------------------------------------- /src/services/resetPasswordService.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/services/resetPasswordService.ts -------------------------------------------------------------------------------- /src/services/userService.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/services/userService.ts -------------------------------------------------------------------------------- /src/services/verificationService.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/services/verificationService.ts -------------------------------------------------------------------------------- /src/storage/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/templates/resetPassword/html.ejs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/templates/resetPassword/html.ejs -------------------------------------------------------------------------------- /src/templates/signUp/html.ejs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/templates/signUp/html.ejs -------------------------------------------------------------------------------- /src/templates/successfullyDeleted/html.ejs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/templates/successfullyDeleted/html.ejs -------------------------------------------------------------------------------- /src/templates/successfullyUpdatedEmail/html.ejs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/templates/successfullyUpdatedEmail/html.ejs -------------------------------------------------------------------------------- /src/templates/successfullyUpdatedPassword/html.ejs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/templates/successfullyUpdatedPassword/html.ejs -------------------------------------------------------------------------------- /src/templates/successfullyUpdatedProfile/html.ejs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/templates/successfullyUpdatedProfile/html.ejs -------------------------------------------------------------------------------- /src/templates/successfullyVerified/html.ejs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/templates/successfullyVerified/html.ejs -------------------------------------------------------------------------------- /src/templates/verification/html.ejs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/templates/verification/html.ejs -------------------------------------------------------------------------------- /src/utils/cryptoString.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/utils/cryptoString.ts -------------------------------------------------------------------------------- /src/utils/dates.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/utils/dates.ts -------------------------------------------------------------------------------- /src/utils/hash.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/utils/hash.ts -------------------------------------------------------------------------------- /src/utils/headers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/utils/headers.ts -------------------------------------------------------------------------------- /src/utils/jwt.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/utils/jwt.ts -------------------------------------------------------------------------------- /src/utils/maths.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/utils/maths.ts -------------------------------------------------------------------------------- /src/utils/paths.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/utils/paths.ts -------------------------------------------------------------------------------- /src/validations/authValidation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/validations/authValidation.ts -------------------------------------------------------------------------------- /src/validations/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/validations/index.ts -------------------------------------------------------------------------------- /src/validations/userValidation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/src/validations/userValidation.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/tsconfig.json -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/watscho/express-mongodb-rest-api-boilerplate/HEAD/yarn.lock --------------------------------------------------------------------------------