├── .commitlintrc.js ├── .cspell.json ├── .czrc ├── .dockerignore ├── .editorconfig ├── .env ├── .eslintignore ├── .eslintrc.js ├── .github ├── CODEOWNERS ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── DEVELOPMENT.md ├── FUNDING.md ├── ISSUE_TEMPLATE.md ├── ISSUE_TEMPLATE │ ├── 01-bug.yml │ ├── 02-documentation.yml │ ├── 03-feature.yml │ └── 04-tooling.yml ├── PULL_REQUEST_TEMPLATE.md ├── SECURITY.md ├── actions │ └── setup-environment │ │ └── action.yml ├── renovate.json └── workflows │ ├── cd.yml │ └── ci.yml ├── .gitignore ├── .husky ├── .gitignore ├── commit-msg └── pre-commit ├── .lintstagedrc.js ├── .markdownlint.json ├── .markdownlintignore ├── .ncurc.js ├── .npmignore ├── .npmpackagejsonlintignore ├── .npmpackagejsonlintrc.json ├── .npmrc ├── .prettierignore ├── .prettierrc.js ├── .tool-versions ├── .versionrc.js ├── .vscode ├── extensions.json ├── launch.json └── settings.json ├── CHANGELOG.md ├── LICENSE ├── Makefile ├── README.md ├── docker ├── Dockerfile └── docker-compose.yml ├── jest.config.js ├── nodemon.json ├── package.json ├── src ├── application │ ├── health │ │ ├── check-health-status.request.ts │ │ ├── check-health-status.usecase.ts │ │ ├── health-status.response.ts │ │ └── index.ts │ ├── sessions │ │ ├── end │ │ │ ├── end-session.request.ts │ │ │ ├── end-session.usecase.ts │ │ │ └── index.ts │ │ ├── index.ts │ │ ├── refresh │ │ │ ├── index.ts │ │ │ ├── refresh-session.request.ts │ │ │ └── refresh-session.usecase.ts │ │ ├── session.response.ts │ │ ├── start │ │ │ ├── index.ts │ │ │ ├── start-session.request.ts │ │ │ └── start-session.usecase.ts │ │ └── validate │ │ │ ├── index.ts │ │ │ ├── validate-session.request.ts │ │ │ ├── validate-session.usecase.ts │ │ │ └── validated-session.response.ts │ ├── shared │ │ ├── base-usecase.ts │ │ ├── index.ts │ │ ├── usecase.decorator.ts │ │ └── usecase.request.ts │ └── users │ │ ├── authentication │ │ ├── authenticate-user.request.ts │ │ ├── authenticate-user.usecase.ts │ │ └── index.ts │ │ ├── find │ │ ├── find-user.request.ts │ │ ├── find-user.usecase.ts │ │ └── index.ts │ │ ├── index.ts │ │ ├── search-all │ │ ├── index.ts │ │ ├── search-all-users.request.ts │ │ └── search-all-users.usecase.ts │ │ └── user.response.ts ├── domain │ ├── health │ │ ├── health-status.ts │ │ └── index.ts │ ├── sessions │ │ ├── index.ts │ │ ├── invalid-session.exception.ts │ │ ├── session-expires-at.ts │ │ ├── session-id.ts │ │ ├── session-refresh-token-hash.ts │ │ ├── session-revoked-at.ts │ │ ├── session-revoked-by.ts │ │ ├── session-revoked-reason.ts │ │ ├── session-user-data.ts │ │ ├── session-user-uuid.ts │ │ ├── session-uuid.ts │ │ ├── session.repository.ts │ │ ├── session.ts │ │ └── tokens │ │ │ ├── access-token.ts │ │ │ ├── index.ts │ │ │ ├── refresh-token.ts │ │ │ ├── token-expires-at.ts │ │ │ ├── token-provider.domain-service.ts │ │ │ └── token.ts │ ├── shared │ │ ├── entities │ │ │ ├── domain-entity.ts │ │ │ ├── index.ts │ │ │ └── triggered-by │ │ │ │ ├── index.ts │ │ │ │ ├── triggered-by-anonymous.ts │ │ │ │ ├── triggered-by-system.ts │ │ │ │ ├── triggered-by-user.ts │ │ │ │ └── triggered-by.ts │ │ ├── exceptions │ │ │ ├── domain.exception.ts │ │ │ ├── index.ts │ │ │ └── invalid-parameter.exception.ts │ │ ├── index.ts │ │ ├── logger.ts │ │ ├── services │ │ │ ├── domain-service.decorator.ts │ │ │ ├── hasher.domain-service.ts │ │ │ ├── index.ts │ │ │ └── logger.domain-service.ts │ │ ├── types.ts │ │ └── value-object │ │ │ ├── composite-value-object.ts │ │ │ ├── date-value-object.ts │ │ │ ├── enum-value-object.ts │ │ │ ├── index.ts │ │ │ ├── number-value-object.ts │ │ │ ├── string-value-object.ts │ │ │ ├── uuid.ts │ │ │ └── value-object.ts │ └── users │ │ ├── authentication │ │ ├── index.ts │ │ ├── invalid-authentication-credentials.exception.ts │ │ └── invalid-authentication-username.exception.ts │ │ ├── index.ts │ │ ├── user-address.ts │ │ ├── user-birth-date.ts │ │ ├── user-email.ts │ │ ├── user-gender.ts │ │ ├── user-id.ts │ │ ├── user-name.ts │ │ ├── user-not-exists.exception.ts │ │ ├── user-password-hash.ts │ │ ├── user-phone-number.ts │ │ ├── user-profile-picture.ts │ │ ├── user-role.ts │ │ ├── user-username.ts │ │ ├── user-uuid.ts │ │ ├── user.repository.ts │ │ └── user.ts ├── healthcheck.ts ├── index.ts ├── infrastructure │ ├── sessions │ │ ├── index.ts │ │ ├── prisma-session.mapper.ts │ │ ├── prisma-session.repository.ts │ │ ├── redis-session.mapper.ts │ │ ├── redis-session.repository.ts │ │ ├── redis-session.ts │ │ └── tokens │ │ │ └── jwt-token-provider.domain-service.ts │ ├── shared │ │ ├── authentication │ │ │ ├── authentication-utils.ts │ │ │ ├── authentication.ts │ │ │ └── index.ts │ │ ├── bootstrap.ts │ │ ├── cache │ │ │ └── cache.ts │ │ ├── config │ │ │ ├── environment.ts │ │ │ ├── index.ts │ │ │ └── infrastructure.config.ts │ │ ├── di │ │ │ └── dependency-injection.ts │ │ ├── index.ts │ │ ├── infrastructure-service.decorator.ts │ │ ├── logger │ │ │ ├── pino-logger.ts │ │ │ └── pino-rotate-file.transport.ts │ │ └── persistence │ │ │ ├── base-repository.ts │ │ │ ├── index.ts │ │ │ ├── prisma │ │ │ ├── prisma-base-repository.ts │ │ │ ├── schema.prisma │ │ │ └── seed.ts │ │ │ ├── redis │ │ │ └── redis-base-repository.ts │ │ │ └── repository.decorator.ts │ └── users │ │ ├── index.ts │ │ ├── prisma-user.mapper.ts │ │ └── prisma-user.repository.ts ├── presentation │ └── rest │ │ ├── config │ │ ├── app.config.ts │ │ └── index.ts │ │ ├── controllers │ │ ├── authentication │ │ │ ├── authenticated-user.api-response.ts │ │ │ ├── authentication.controller.ts │ │ │ └── user-successfully-authenticated.api-response.ts │ │ ├── health │ │ │ ├── health-status.api-response.ts │ │ │ └── health.controller.ts │ │ └── users │ │ │ ├── user.api-response.ts │ │ │ └── user.controller.ts │ │ ├── exceptions │ │ ├── api.exception.ts │ │ ├── bad-request.exception.ts │ │ ├── exception.api-response.ts │ │ ├── forbidden.exception.ts │ │ ├── index.ts │ │ ├── internal-server-error.exception.ts │ │ ├── no-credentials-provided.exception.ts │ │ ├── path-not-found.exception.ts │ │ ├── resource-not-found.exception.ts │ │ └── unauthorized.exception.ts │ │ ├── filters │ │ ├── error-handler.filter.ts │ │ ├── index.ts │ │ └── not-found.filter.ts │ │ ├── middlewares │ │ ├── authentication.middleware.ts │ │ ├── error-handler.middleware.ts │ │ ├── index.ts │ │ ├── logger.middleware.ts │ │ ├── metadata.middleware.ts │ │ └── not-found.middleware.ts │ │ ├── server.ts │ │ └── shared │ │ ├── request.utils.ts │ │ ├── response.utils.ts │ │ ├── rest-controller.decorator.ts │ │ └── with-auth.decorator.ts └── types │ └── global.d.ts ├── test ├── e2e │ ├── health │ │ └── check-health-status.e2e.ts │ └── shared │ │ ├── index.ts │ │ └── test-server.ts ├── integration │ └── health │ │ └── check-health-status.int.ts ├── jest.mocks.ts ├── jest.setup.ts └── unit │ └── healthcheck │ └── health-status-response.unit.ts ├── tsconfig.build.json └── tsconfig.json /.commitlintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.commitlintrc.js -------------------------------------------------------------------------------- /.cspell.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.cspell.json -------------------------------------------------------------------------------- /.czrc: -------------------------------------------------------------------------------- 1 | { 2 | "path": "cz-conventional-changelog" 3 | } 4 | -------------------------------------------------------------------------------- /.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.dockerignore -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.editorconfig -------------------------------------------------------------------------------- /.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.env -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.eslintignore -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.eslintrc.js -------------------------------------------------------------------------------- /.github/CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @borjapazr 2 | -------------------------------------------------------------------------------- /.github/CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.github/CODE_OF_CONDUCT.md -------------------------------------------------------------------------------- /.github/CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.github/CONTRIBUTING.md -------------------------------------------------------------------------------- /.github/DEVELOPMENT.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.github/DEVELOPMENT.md -------------------------------------------------------------------------------- /.github/FUNDING.md: -------------------------------------------------------------------------------- 1 | github: borjapazr 2 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.github/ISSUE_TEMPLATE.md -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/01-bug.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.github/ISSUE_TEMPLATE/01-bug.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/02-documentation.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.github/ISSUE_TEMPLATE/02-documentation.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/03-feature.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.github/ISSUE_TEMPLATE/03-feature.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/04-tooling.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.github/ISSUE_TEMPLATE/04-tooling.yml -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.github/PULL_REQUEST_TEMPLATE.md -------------------------------------------------------------------------------- /.github/SECURITY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.github/SECURITY.md -------------------------------------------------------------------------------- /.github/actions/setup-environment/action.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.github/actions/setup-environment/action.yml -------------------------------------------------------------------------------- /.github/renovate.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.github/renovate.json -------------------------------------------------------------------------------- /.github/workflows/cd.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.github/workflows/cd.yml -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.gitignore -------------------------------------------------------------------------------- /.husky/.gitignore: -------------------------------------------------------------------------------- 1 | _ 2 | -------------------------------------------------------------------------------- /.husky/commit-msg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.husky/commit-msg -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.husky/pre-commit -------------------------------------------------------------------------------- /.lintstagedrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.lintstagedrc.js -------------------------------------------------------------------------------- /.markdownlint.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.markdownlint.json -------------------------------------------------------------------------------- /.markdownlintignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.markdownlintignore -------------------------------------------------------------------------------- /.ncurc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | upgrade: true, 3 | reject: ['read-pkg'] 4 | }; 5 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.npmignore -------------------------------------------------------------------------------- /.npmpackagejsonlintignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.npmpackagejsonlintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.npmpackagejsonlintrc.json -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- 1 | auto-install-peers=true 2 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.prettierignore -------------------------------------------------------------------------------- /.prettierrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.prettierrc.js -------------------------------------------------------------------------------- /.tool-versions: -------------------------------------------------------------------------------- 1 | nodejs 20.11.1 2 | -------------------------------------------------------------------------------- /.versionrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.versionrc.js -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.vscode/extensions.json -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.vscode/launch.json -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/README.md -------------------------------------------------------------------------------- /docker/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/docker/Dockerfile -------------------------------------------------------------------------------- /docker/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/docker/docker-compose.yml -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/jest.config.js -------------------------------------------------------------------------------- /nodemon.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/nodemon.json -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/package.json -------------------------------------------------------------------------------- /src/application/health/check-health-status.request.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/health/check-health-status.request.ts -------------------------------------------------------------------------------- /src/application/health/check-health-status.usecase.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/health/check-health-status.usecase.ts -------------------------------------------------------------------------------- /src/application/health/health-status.response.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/health/health-status.response.ts -------------------------------------------------------------------------------- /src/application/health/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/health/index.ts -------------------------------------------------------------------------------- /src/application/sessions/end/end-session.request.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/sessions/end/end-session.request.ts -------------------------------------------------------------------------------- /src/application/sessions/end/end-session.usecase.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/sessions/end/end-session.usecase.ts -------------------------------------------------------------------------------- /src/application/sessions/end/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/sessions/end/index.ts -------------------------------------------------------------------------------- /src/application/sessions/index.ts: -------------------------------------------------------------------------------- 1 | export * from './session.response'; 2 | -------------------------------------------------------------------------------- /src/application/sessions/refresh/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/sessions/refresh/index.ts -------------------------------------------------------------------------------- /src/application/sessions/refresh/refresh-session.request.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/sessions/refresh/refresh-session.request.ts -------------------------------------------------------------------------------- /src/application/sessions/refresh/refresh-session.usecase.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/sessions/refresh/refresh-session.usecase.ts -------------------------------------------------------------------------------- /src/application/sessions/session.response.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/sessions/session.response.ts -------------------------------------------------------------------------------- /src/application/sessions/start/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/sessions/start/index.ts -------------------------------------------------------------------------------- /src/application/sessions/start/start-session.request.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/sessions/start/start-session.request.ts -------------------------------------------------------------------------------- /src/application/sessions/start/start-session.usecase.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/sessions/start/start-session.usecase.ts -------------------------------------------------------------------------------- /src/application/sessions/validate/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/sessions/validate/index.ts -------------------------------------------------------------------------------- /src/application/sessions/validate/validate-session.request.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/sessions/validate/validate-session.request.ts -------------------------------------------------------------------------------- /src/application/sessions/validate/validate-session.usecase.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/sessions/validate/validate-session.usecase.ts -------------------------------------------------------------------------------- /src/application/sessions/validate/validated-session.response.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/sessions/validate/validated-session.response.ts -------------------------------------------------------------------------------- /src/application/shared/base-usecase.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/shared/base-usecase.ts -------------------------------------------------------------------------------- /src/application/shared/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/shared/index.ts -------------------------------------------------------------------------------- /src/application/shared/usecase.decorator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/shared/usecase.decorator.ts -------------------------------------------------------------------------------- /src/application/shared/usecase.request.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/shared/usecase.request.ts -------------------------------------------------------------------------------- /src/application/users/authentication/authenticate-user.request.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/users/authentication/authenticate-user.request.ts -------------------------------------------------------------------------------- /src/application/users/authentication/authenticate-user.usecase.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/users/authentication/authenticate-user.usecase.ts -------------------------------------------------------------------------------- /src/application/users/authentication/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/users/authentication/index.ts -------------------------------------------------------------------------------- /src/application/users/find/find-user.request.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/users/find/find-user.request.ts -------------------------------------------------------------------------------- /src/application/users/find/find-user.usecase.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/users/find/find-user.usecase.ts -------------------------------------------------------------------------------- /src/application/users/find/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/users/find/index.ts -------------------------------------------------------------------------------- /src/application/users/index.ts: -------------------------------------------------------------------------------- 1 | export * from './user.response'; 2 | -------------------------------------------------------------------------------- /src/application/users/search-all/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/users/search-all/index.ts -------------------------------------------------------------------------------- /src/application/users/search-all/search-all-users.request.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/users/search-all/search-all-users.request.ts -------------------------------------------------------------------------------- /src/application/users/search-all/search-all-users.usecase.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/users/search-all/search-all-users.usecase.ts -------------------------------------------------------------------------------- /src/application/users/user.response.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/application/users/user.response.ts -------------------------------------------------------------------------------- /src/domain/health/health-status.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/health/health-status.ts -------------------------------------------------------------------------------- /src/domain/health/index.ts: -------------------------------------------------------------------------------- 1 | export * from './health-status'; 2 | -------------------------------------------------------------------------------- /src/domain/sessions/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/sessions/index.ts -------------------------------------------------------------------------------- /src/domain/sessions/invalid-session.exception.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/sessions/invalid-session.exception.ts -------------------------------------------------------------------------------- /src/domain/sessions/session-expires-at.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/sessions/session-expires-at.ts -------------------------------------------------------------------------------- /src/domain/sessions/session-id.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/sessions/session-id.ts -------------------------------------------------------------------------------- /src/domain/sessions/session-refresh-token-hash.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/sessions/session-refresh-token-hash.ts -------------------------------------------------------------------------------- /src/domain/sessions/session-revoked-at.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/sessions/session-revoked-at.ts -------------------------------------------------------------------------------- /src/domain/sessions/session-revoked-by.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/sessions/session-revoked-by.ts -------------------------------------------------------------------------------- /src/domain/sessions/session-revoked-reason.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/sessions/session-revoked-reason.ts -------------------------------------------------------------------------------- /src/domain/sessions/session-user-data.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/sessions/session-user-data.ts -------------------------------------------------------------------------------- /src/domain/sessions/session-user-uuid.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/sessions/session-user-uuid.ts -------------------------------------------------------------------------------- /src/domain/sessions/session-uuid.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/sessions/session-uuid.ts -------------------------------------------------------------------------------- /src/domain/sessions/session.repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/sessions/session.repository.ts -------------------------------------------------------------------------------- /src/domain/sessions/session.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/sessions/session.ts -------------------------------------------------------------------------------- /src/domain/sessions/tokens/access-token.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/sessions/tokens/access-token.ts -------------------------------------------------------------------------------- /src/domain/sessions/tokens/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/sessions/tokens/index.ts -------------------------------------------------------------------------------- /src/domain/sessions/tokens/refresh-token.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/sessions/tokens/refresh-token.ts -------------------------------------------------------------------------------- /src/domain/sessions/tokens/token-expires-at.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/sessions/tokens/token-expires-at.ts -------------------------------------------------------------------------------- /src/domain/sessions/tokens/token-provider.domain-service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/sessions/tokens/token-provider.domain-service.ts -------------------------------------------------------------------------------- /src/domain/sessions/tokens/token.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/sessions/tokens/token.ts -------------------------------------------------------------------------------- /src/domain/shared/entities/domain-entity.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/entities/domain-entity.ts -------------------------------------------------------------------------------- /src/domain/shared/entities/index.ts: -------------------------------------------------------------------------------- 1 | export * from './domain-entity'; 2 | -------------------------------------------------------------------------------- /src/domain/shared/entities/triggered-by/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/entities/triggered-by/index.ts -------------------------------------------------------------------------------- /src/domain/shared/entities/triggered-by/triggered-by-anonymous.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/entities/triggered-by/triggered-by-anonymous.ts -------------------------------------------------------------------------------- /src/domain/shared/entities/triggered-by/triggered-by-system.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/entities/triggered-by/triggered-by-system.ts -------------------------------------------------------------------------------- /src/domain/shared/entities/triggered-by/triggered-by-user.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/entities/triggered-by/triggered-by-user.ts -------------------------------------------------------------------------------- /src/domain/shared/entities/triggered-by/triggered-by.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/entities/triggered-by/triggered-by.ts -------------------------------------------------------------------------------- /src/domain/shared/exceptions/domain.exception.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/exceptions/domain.exception.ts -------------------------------------------------------------------------------- /src/domain/shared/exceptions/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/exceptions/index.ts -------------------------------------------------------------------------------- /src/domain/shared/exceptions/invalid-parameter.exception.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/exceptions/invalid-parameter.exception.ts -------------------------------------------------------------------------------- /src/domain/shared/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/index.ts -------------------------------------------------------------------------------- /src/domain/shared/logger.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/logger.ts -------------------------------------------------------------------------------- /src/domain/shared/services/domain-service.decorator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/services/domain-service.decorator.ts -------------------------------------------------------------------------------- /src/domain/shared/services/hasher.domain-service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/services/hasher.domain-service.ts -------------------------------------------------------------------------------- /src/domain/shared/services/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/services/index.ts -------------------------------------------------------------------------------- /src/domain/shared/services/logger.domain-service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/services/logger.domain-service.ts -------------------------------------------------------------------------------- /src/domain/shared/types.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/types.ts -------------------------------------------------------------------------------- /src/domain/shared/value-object/composite-value-object.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/value-object/composite-value-object.ts -------------------------------------------------------------------------------- /src/domain/shared/value-object/date-value-object.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/value-object/date-value-object.ts -------------------------------------------------------------------------------- /src/domain/shared/value-object/enum-value-object.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/value-object/enum-value-object.ts -------------------------------------------------------------------------------- /src/domain/shared/value-object/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/value-object/index.ts -------------------------------------------------------------------------------- /src/domain/shared/value-object/number-value-object.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/value-object/number-value-object.ts -------------------------------------------------------------------------------- /src/domain/shared/value-object/string-value-object.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/value-object/string-value-object.ts -------------------------------------------------------------------------------- /src/domain/shared/value-object/uuid.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/value-object/uuid.ts -------------------------------------------------------------------------------- /src/domain/shared/value-object/value-object.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/shared/value-object/value-object.ts -------------------------------------------------------------------------------- /src/domain/users/authentication/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/users/authentication/index.ts -------------------------------------------------------------------------------- /src/domain/users/authentication/invalid-authentication-credentials.exception.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/users/authentication/invalid-authentication-credentials.exception.ts -------------------------------------------------------------------------------- /src/domain/users/authentication/invalid-authentication-username.exception.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/users/authentication/invalid-authentication-username.exception.ts -------------------------------------------------------------------------------- /src/domain/users/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/users/index.ts -------------------------------------------------------------------------------- /src/domain/users/user-address.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/users/user-address.ts -------------------------------------------------------------------------------- /src/domain/users/user-birth-date.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/users/user-birth-date.ts -------------------------------------------------------------------------------- /src/domain/users/user-email.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/users/user-email.ts -------------------------------------------------------------------------------- /src/domain/users/user-gender.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/users/user-gender.ts -------------------------------------------------------------------------------- /src/domain/users/user-id.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/users/user-id.ts -------------------------------------------------------------------------------- /src/domain/users/user-name.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/users/user-name.ts -------------------------------------------------------------------------------- /src/domain/users/user-not-exists.exception.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/users/user-not-exists.exception.ts -------------------------------------------------------------------------------- /src/domain/users/user-password-hash.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/users/user-password-hash.ts -------------------------------------------------------------------------------- /src/domain/users/user-phone-number.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/users/user-phone-number.ts -------------------------------------------------------------------------------- /src/domain/users/user-profile-picture.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/users/user-profile-picture.ts -------------------------------------------------------------------------------- /src/domain/users/user-role.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/users/user-role.ts -------------------------------------------------------------------------------- /src/domain/users/user-username.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/users/user-username.ts -------------------------------------------------------------------------------- /src/domain/users/user-uuid.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/users/user-uuid.ts -------------------------------------------------------------------------------- /src/domain/users/user.repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/users/user.repository.ts -------------------------------------------------------------------------------- /src/domain/users/user.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/domain/users/user.ts -------------------------------------------------------------------------------- /src/healthcheck.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/healthcheck.ts -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/index.ts -------------------------------------------------------------------------------- /src/infrastructure/sessions/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/sessions/index.ts -------------------------------------------------------------------------------- /src/infrastructure/sessions/prisma-session.mapper.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/sessions/prisma-session.mapper.ts -------------------------------------------------------------------------------- /src/infrastructure/sessions/prisma-session.repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/sessions/prisma-session.repository.ts -------------------------------------------------------------------------------- /src/infrastructure/sessions/redis-session.mapper.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/sessions/redis-session.mapper.ts -------------------------------------------------------------------------------- /src/infrastructure/sessions/redis-session.repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/sessions/redis-session.repository.ts -------------------------------------------------------------------------------- /src/infrastructure/sessions/redis-session.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/sessions/redis-session.ts -------------------------------------------------------------------------------- /src/infrastructure/sessions/tokens/jwt-token-provider.domain-service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/sessions/tokens/jwt-token-provider.domain-service.ts -------------------------------------------------------------------------------- /src/infrastructure/shared/authentication/authentication-utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/shared/authentication/authentication-utils.ts -------------------------------------------------------------------------------- /src/infrastructure/shared/authentication/authentication.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/shared/authentication/authentication.ts -------------------------------------------------------------------------------- /src/infrastructure/shared/authentication/index.ts: -------------------------------------------------------------------------------- 1 | export * from './authentication'; 2 | -------------------------------------------------------------------------------- /src/infrastructure/shared/bootstrap.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/shared/bootstrap.ts -------------------------------------------------------------------------------- /src/infrastructure/shared/cache/cache.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/shared/cache/cache.ts -------------------------------------------------------------------------------- /src/infrastructure/shared/config/environment.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/shared/config/environment.ts -------------------------------------------------------------------------------- /src/infrastructure/shared/config/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/shared/config/index.ts -------------------------------------------------------------------------------- /src/infrastructure/shared/config/infrastructure.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/shared/config/infrastructure.config.ts -------------------------------------------------------------------------------- /src/infrastructure/shared/di/dependency-injection.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/shared/di/dependency-injection.ts -------------------------------------------------------------------------------- /src/infrastructure/shared/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/shared/index.ts -------------------------------------------------------------------------------- /src/infrastructure/shared/infrastructure-service.decorator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/shared/infrastructure-service.decorator.ts -------------------------------------------------------------------------------- /src/infrastructure/shared/logger/pino-logger.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/shared/logger/pino-logger.ts -------------------------------------------------------------------------------- /src/infrastructure/shared/logger/pino-rotate-file.transport.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/shared/logger/pino-rotate-file.transport.ts -------------------------------------------------------------------------------- /src/infrastructure/shared/persistence/base-repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/shared/persistence/base-repository.ts -------------------------------------------------------------------------------- /src/infrastructure/shared/persistence/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/shared/persistence/index.ts -------------------------------------------------------------------------------- /src/infrastructure/shared/persistence/prisma/prisma-base-repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/shared/persistence/prisma/prisma-base-repository.ts -------------------------------------------------------------------------------- /src/infrastructure/shared/persistence/prisma/schema.prisma: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/shared/persistence/prisma/schema.prisma -------------------------------------------------------------------------------- /src/infrastructure/shared/persistence/prisma/seed.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/shared/persistence/prisma/seed.ts -------------------------------------------------------------------------------- /src/infrastructure/shared/persistence/redis/redis-base-repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/shared/persistence/redis/redis-base-repository.ts -------------------------------------------------------------------------------- /src/infrastructure/shared/persistence/repository.decorator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/shared/persistence/repository.decorator.ts -------------------------------------------------------------------------------- /src/infrastructure/users/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/users/index.ts -------------------------------------------------------------------------------- /src/infrastructure/users/prisma-user.mapper.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/users/prisma-user.mapper.ts -------------------------------------------------------------------------------- /src/infrastructure/users/prisma-user.repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/infrastructure/users/prisma-user.repository.ts -------------------------------------------------------------------------------- /src/presentation/rest/config/app.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/config/app.config.ts -------------------------------------------------------------------------------- /src/presentation/rest/config/index.ts: -------------------------------------------------------------------------------- 1 | export * from './app.config'; 2 | -------------------------------------------------------------------------------- /src/presentation/rest/controllers/authentication/authenticated-user.api-response.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/controllers/authentication/authenticated-user.api-response.ts -------------------------------------------------------------------------------- /src/presentation/rest/controllers/authentication/authentication.controller.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/controllers/authentication/authentication.controller.ts -------------------------------------------------------------------------------- /src/presentation/rest/controllers/authentication/user-successfully-authenticated.api-response.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/controllers/authentication/user-successfully-authenticated.api-response.ts -------------------------------------------------------------------------------- /src/presentation/rest/controllers/health/health-status.api-response.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/controllers/health/health-status.api-response.ts -------------------------------------------------------------------------------- /src/presentation/rest/controllers/health/health.controller.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/controllers/health/health.controller.ts -------------------------------------------------------------------------------- /src/presentation/rest/controllers/users/user.api-response.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/controllers/users/user.api-response.ts -------------------------------------------------------------------------------- /src/presentation/rest/controllers/users/user.controller.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/controllers/users/user.controller.ts -------------------------------------------------------------------------------- /src/presentation/rest/exceptions/api.exception.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/exceptions/api.exception.ts -------------------------------------------------------------------------------- /src/presentation/rest/exceptions/bad-request.exception.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/exceptions/bad-request.exception.ts -------------------------------------------------------------------------------- /src/presentation/rest/exceptions/exception.api-response.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/exceptions/exception.api-response.ts -------------------------------------------------------------------------------- /src/presentation/rest/exceptions/forbidden.exception.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/exceptions/forbidden.exception.ts -------------------------------------------------------------------------------- /src/presentation/rest/exceptions/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/exceptions/index.ts -------------------------------------------------------------------------------- /src/presentation/rest/exceptions/internal-server-error.exception.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/exceptions/internal-server-error.exception.ts -------------------------------------------------------------------------------- /src/presentation/rest/exceptions/no-credentials-provided.exception.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/exceptions/no-credentials-provided.exception.ts -------------------------------------------------------------------------------- /src/presentation/rest/exceptions/path-not-found.exception.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/exceptions/path-not-found.exception.ts -------------------------------------------------------------------------------- /src/presentation/rest/exceptions/resource-not-found.exception.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/exceptions/resource-not-found.exception.ts -------------------------------------------------------------------------------- /src/presentation/rest/exceptions/unauthorized.exception.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/exceptions/unauthorized.exception.ts -------------------------------------------------------------------------------- /src/presentation/rest/filters/error-handler.filter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/filters/error-handler.filter.ts -------------------------------------------------------------------------------- /src/presentation/rest/filters/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/filters/index.ts -------------------------------------------------------------------------------- /src/presentation/rest/filters/not-found.filter.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/filters/not-found.filter.ts -------------------------------------------------------------------------------- /src/presentation/rest/middlewares/authentication.middleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/middlewares/authentication.middleware.ts -------------------------------------------------------------------------------- /src/presentation/rest/middlewares/error-handler.middleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/middlewares/error-handler.middleware.ts -------------------------------------------------------------------------------- /src/presentation/rest/middlewares/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/middlewares/index.ts -------------------------------------------------------------------------------- /src/presentation/rest/middlewares/logger.middleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/middlewares/logger.middleware.ts -------------------------------------------------------------------------------- /src/presentation/rest/middlewares/metadata.middleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/middlewares/metadata.middleware.ts -------------------------------------------------------------------------------- /src/presentation/rest/middlewares/not-found.middleware.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/middlewares/not-found.middleware.ts -------------------------------------------------------------------------------- /src/presentation/rest/server.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/server.ts -------------------------------------------------------------------------------- /src/presentation/rest/shared/request.utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/shared/request.utils.ts -------------------------------------------------------------------------------- /src/presentation/rest/shared/response.utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/shared/response.utils.ts -------------------------------------------------------------------------------- /src/presentation/rest/shared/rest-controller.decorator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/shared/rest-controller.decorator.ts -------------------------------------------------------------------------------- /src/presentation/rest/shared/with-auth.decorator.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/presentation/rest/shared/with-auth.decorator.ts -------------------------------------------------------------------------------- /src/types/global.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/src/types/global.d.ts -------------------------------------------------------------------------------- /test/e2e/health/check-health-status.e2e.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/test/e2e/health/check-health-status.e2e.ts -------------------------------------------------------------------------------- /test/e2e/shared/index.ts: -------------------------------------------------------------------------------- 1 | export * from './test-server'; 2 | -------------------------------------------------------------------------------- /test/e2e/shared/test-server.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/test/e2e/shared/test-server.ts -------------------------------------------------------------------------------- /test/integration/health/check-health-status.int.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/test/integration/health/check-health-status.int.ts -------------------------------------------------------------------------------- /test/jest.mocks.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/test/jest.mocks.ts -------------------------------------------------------------------------------- /test/jest.setup.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/test/jest.setup.ts -------------------------------------------------------------------------------- /test/unit/healthcheck/health-status-response.unit.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/test/unit/healthcheck/health-status-response.unit.ts -------------------------------------------------------------------------------- /tsconfig.build.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/tsconfig.build.json -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/borjapazr/express-typescript-skeleton/HEAD/tsconfig.json --------------------------------------------------------------------------------