├── .env.example ├── .eslintignore ├── .eslintrc.json ├── .github ├── dependabot.yml ├── workflows │ └── yarn.yml └── yml │ ├── npm.yml │ ├── pnpm.yml │ └── yarn.yml ├── .gitignore ├── .husky └── pre-push ├── .lintstagedrc ├── .prettierrc ├── LICENSE ├── README.md ├── ecosystem.config.js ├── jest.config.js ├── jest.setup.js ├── package.json ├── prod.tsconfig.json ├── src ├── __tests__ │ ├── auth.test.ts │ └── good.test.ts ├── bin │ └── index.js ├── config │ ├── db.ts │ ├── routes.ts │ └── server.ts ├── entities │ ├── admin │ │ ├── constants.ts │ │ ├── controller.ts │ │ ├── endpoints.ts │ │ ├── interface.ts │ │ ├── model.ts │ │ └── validation.ts │ ├── auth │ │ ├── constants.ts │ │ ├── controller.ts │ │ ├── endpoints.ts │ │ ├── interface.ts │ │ ├── model.ts │ │ └── validation.ts │ └── user │ │ ├── constants.ts │ │ ├── controller.ts │ │ ├── endpoints.ts │ │ ├── interface.ts │ │ ├── model.ts │ │ └── validation.ts ├── helpers │ ├── catchErrors.ts │ ├── customError.ts │ ├── handlePopulate.ts │ └── index.ts ├── index.ts ├── middlewares │ ├── errorHandler.ts │ ├── index.ts │ ├── limiter.ts │ ├── morgan.ts │ ├── notFound.ts │ └── permissions.ts ├── seeders │ ├── data │ │ └── users.json │ ├── seedAdmin.ts │ └── seedUsers.ts ├── services │ ├── auth.service.ts │ ├── crud.service.ts │ ├── logger.service.ts │ └── mail.service.ts ├── tasks │ ├── generateEntity.ts │ └── templates │ │ ├── default │ │ ├── constants.ts │ │ ├── controller.ts │ │ ├── endpoints.ts │ │ ├── interface.ts │ │ ├── model.ts │ │ └── validation.ts │ │ └── user │ │ ├── constants.ts │ │ ├── controller.ts │ │ ├── endpoints.ts │ │ ├── interface.ts │ │ ├── model.ts │ │ └── validation.ts └── types │ ├── environment.d.ts │ └── express │ └── index.d.ts ├── tsconfig.eslint.json ├── tsconfig.json └── yarn.lock /.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/.env.example -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/.eslintignore -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/.eslintrc.json -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.github/workflows/yarn.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/.github/workflows/yarn.yml -------------------------------------------------------------------------------- /.github/yml/npm.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/.github/yml/npm.yml -------------------------------------------------------------------------------- /.github/yml/pnpm.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/.github/yml/pnpm.yml -------------------------------------------------------------------------------- /.github/yml/yarn.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/.github/yml/yarn.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/.gitignore -------------------------------------------------------------------------------- /.husky/pre-push: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/.husky/pre-push -------------------------------------------------------------------------------- /.lintstagedrc: -------------------------------------------------------------------------------- 1 | { 2 | "*.(js|ts)": "eslint --fix" 3 | } -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/.prettierrc -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/README.md -------------------------------------------------------------------------------- /ecosystem.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/ecosystem.config.js -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/jest.config.js -------------------------------------------------------------------------------- /jest.setup.js: -------------------------------------------------------------------------------- 1 | jest.setTimeout(50000); 2 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/package.json -------------------------------------------------------------------------------- /prod.tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/prod.tsconfig.json -------------------------------------------------------------------------------- /src/__tests__/auth.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/__tests__/auth.test.ts -------------------------------------------------------------------------------- /src/__tests__/good.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/__tests__/good.test.ts -------------------------------------------------------------------------------- /src/bin/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/bin/index.js -------------------------------------------------------------------------------- /src/config/db.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/config/db.ts -------------------------------------------------------------------------------- /src/config/routes.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/config/routes.ts -------------------------------------------------------------------------------- /src/config/server.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/config/server.ts -------------------------------------------------------------------------------- /src/entities/admin/constants.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/entities/admin/constants.ts -------------------------------------------------------------------------------- /src/entities/admin/controller.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/entities/admin/controller.ts -------------------------------------------------------------------------------- /src/entities/admin/endpoints.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/entities/admin/endpoints.ts -------------------------------------------------------------------------------- /src/entities/admin/interface.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/entities/admin/interface.ts -------------------------------------------------------------------------------- /src/entities/admin/model.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/entities/admin/model.ts -------------------------------------------------------------------------------- /src/entities/admin/validation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/entities/admin/validation.ts -------------------------------------------------------------------------------- /src/entities/auth/constants.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/entities/auth/constants.ts -------------------------------------------------------------------------------- /src/entities/auth/controller.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/entities/auth/controller.ts -------------------------------------------------------------------------------- /src/entities/auth/endpoints.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/entities/auth/endpoints.ts -------------------------------------------------------------------------------- /src/entities/auth/interface.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/entities/auth/interface.ts -------------------------------------------------------------------------------- /src/entities/auth/model.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/entities/auth/model.ts -------------------------------------------------------------------------------- /src/entities/auth/validation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/entities/auth/validation.ts -------------------------------------------------------------------------------- /src/entities/user/constants.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/entities/user/constants.ts -------------------------------------------------------------------------------- /src/entities/user/controller.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/entities/user/controller.ts -------------------------------------------------------------------------------- /src/entities/user/endpoints.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/entities/user/endpoints.ts -------------------------------------------------------------------------------- /src/entities/user/interface.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/entities/user/interface.ts -------------------------------------------------------------------------------- /src/entities/user/model.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/entities/user/model.ts -------------------------------------------------------------------------------- /src/entities/user/validation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/entities/user/validation.ts -------------------------------------------------------------------------------- /src/helpers/catchErrors.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/helpers/catchErrors.ts -------------------------------------------------------------------------------- /src/helpers/customError.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/helpers/customError.ts -------------------------------------------------------------------------------- /src/helpers/handlePopulate.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/helpers/handlePopulate.ts -------------------------------------------------------------------------------- /src/helpers/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/helpers/index.ts -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/index.ts -------------------------------------------------------------------------------- /src/middlewares/errorHandler.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/middlewares/errorHandler.ts -------------------------------------------------------------------------------- /src/middlewares/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/middlewares/index.ts -------------------------------------------------------------------------------- /src/middlewares/limiter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/middlewares/limiter.ts -------------------------------------------------------------------------------- /src/middlewares/morgan.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/middlewares/morgan.ts -------------------------------------------------------------------------------- /src/middlewares/notFound.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/middlewares/notFound.ts -------------------------------------------------------------------------------- /src/middlewares/permissions.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/middlewares/permissions.ts -------------------------------------------------------------------------------- /src/seeders/data/users.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/seeders/data/users.json -------------------------------------------------------------------------------- /src/seeders/seedAdmin.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/seeders/seedAdmin.ts -------------------------------------------------------------------------------- /src/seeders/seedUsers.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/seeders/seedUsers.ts -------------------------------------------------------------------------------- /src/services/auth.service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/services/auth.service.ts -------------------------------------------------------------------------------- /src/services/crud.service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/services/crud.service.ts -------------------------------------------------------------------------------- /src/services/logger.service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/services/logger.service.ts -------------------------------------------------------------------------------- /src/services/mail.service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/services/mail.service.ts -------------------------------------------------------------------------------- /src/tasks/generateEntity.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/tasks/generateEntity.ts -------------------------------------------------------------------------------- /src/tasks/templates/default/constants.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/tasks/templates/default/constants.ts -------------------------------------------------------------------------------- /src/tasks/templates/default/controller.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/tasks/templates/default/controller.ts -------------------------------------------------------------------------------- /src/tasks/templates/default/endpoints.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/tasks/templates/default/endpoints.ts -------------------------------------------------------------------------------- /src/tasks/templates/default/interface.ts: -------------------------------------------------------------------------------- 1 | export interface {{capitalizedName}}Entity {} 2 | -------------------------------------------------------------------------------- /src/tasks/templates/default/model.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/tasks/templates/default/model.ts -------------------------------------------------------------------------------- /src/tasks/templates/default/validation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/tasks/templates/default/validation.ts -------------------------------------------------------------------------------- /src/tasks/templates/user/constants.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/tasks/templates/user/constants.ts -------------------------------------------------------------------------------- /src/tasks/templates/user/controller.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/tasks/templates/user/controller.ts -------------------------------------------------------------------------------- /src/tasks/templates/user/endpoints.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/tasks/templates/user/endpoints.ts -------------------------------------------------------------------------------- /src/tasks/templates/user/interface.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/tasks/templates/user/interface.ts -------------------------------------------------------------------------------- /src/tasks/templates/user/model.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/tasks/templates/user/model.ts -------------------------------------------------------------------------------- /src/tasks/templates/user/validation.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/tasks/templates/user/validation.ts -------------------------------------------------------------------------------- /src/types/environment.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/types/environment.d.ts -------------------------------------------------------------------------------- /src/types/express/index.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/src/types/express/index.d.ts -------------------------------------------------------------------------------- /tsconfig.eslint.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/tsconfig.eslint.json -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/tsconfig.json -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/KhomsiAdam/create-express-rest-ts/HEAD/yarn.lock --------------------------------------------------------------------------------