├── .dockerignore ├── .env ├── .eslintrc.js ├── .gitignore ├── .prettierrc ├── README.md ├── apps ├── api │ ├── Dockerfile │ ├── src │ │ ├── app.controller.ts │ │ ├── app.module.ts │ │ └── main.ts │ └── tsconfig.app.json ├── auth │ ├── Dockerfile │ ├── src │ │ ├── auth.controller.ts │ │ ├── auth.module.ts │ │ ├── auth.service.ts │ │ ├── db │ │ │ ├── data-source.ts │ │ │ └── migrations │ │ │ │ ├── 1671445944422-InitDB.ts │ │ │ │ └── 1671446426001-SecondMigration.ts │ │ ├── dtos │ │ │ ├── existing-user.dto.ts │ │ │ └── new-user.dto.ts │ │ ├── interfaces │ │ │ └── auth.service.interface.ts │ │ ├── jwt-request.interface.ts │ │ ├── jwt-strategy.ts │ │ ├── jwt.guard.ts │ │ └── main.ts │ └── tsconfig.app.json ├── chat │ ├── Dockerfile │ ├── src │ │ ├── chat.controller.ts │ │ ├── chat.gateway.ts │ │ ├── chat.module.ts │ │ ├── chat.service.ts │ │ ├── dtos │ │ │ ├── CallDetails.dto.ts │ │ │ └── NewMessage.dto.ts │ │ └── main.ts │ └── tsconfig.app.json └── presence │ ├── Dockerfile │ ├── src │ ├── interfaces │ │ └── ActiveUser.interface.ts │ ├── main.ts │ ├── presence.controller.ts │ ├── presence.gateway.ts │ ├── presence.module.ts │ └── presence.service.ts │ └── tsconfig.app.json ├── docker-compose.yml ├── libs └── shared │ ├── src │ ├── entities │ │ ├── conversation.entity.ts │ │ ├── friend-request.entity.ts │ │ ├── message.entity.ts │ │ └── user.entity.ts │ ├── guards │ │ └── auth.guard.ts │ ├── index.ts │ ├── interceptors │ │ └── user.interceptor.ts │ ├── interfaces │ │ ├── conversations.repository.interface.ts │ │ ├── friend-requests.repository.interface.ts │ │ ├── messages.repository.interface.ts │ │ ├── shared.service.interface.ts │ │ ├── user-jwt.interface.ts │ │ ├── user-request.interface.ts │ │ └── users.repository.interface.ts │ ├── modules │ │ ├── postgresdb.module.ts │ │ ├── redis.module.ts │ │ └── shared.module.ts │ ├── repositories │ │ ├── base │ │ │ ├── base.abstract.repository.ts │ │ │ └── base.interface.repository.ts │ │ ├── conversations.repository.ts │ │ ├── friend-requests.repository.ts │ │ ├── messages.repository.ts │ │ └── users.repository.ts │ └── services │ │ ├── redis-cache.service.ts │ │ └── shared.service.ts │ └── tsconfig.lib.json ├── nest-cli.json ├── package.json ├── tsconfig.build.json ├── tsconfig.json └── webpack-hmr.config.js /.dockerignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | dist 3 | *.env -------------------------------------------------------------------------------- /.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/.env -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/.eslintrc.js -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/.gitignore -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/.prettierrc -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/README.md -------------------------------------------------------------------------------- /apps/api/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/api/Dockerfile -------------------------------------------------------------------------------- /apps/api/src/app.controller.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/api/src/app.controller.ts -------------------------------------------------------------------------------- /apps/api/src/app.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/api/src/app.module.ts -------------------------------------------------------------------------------- /apps/api/src/main.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/api/src/main.ts -------------------------------------------------------------------------------- /apps/api/tsconfig.app.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/api/tsconfig.app.json -------------------------------------------------------------------------------- /apps/auth/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/auth/Dockerfile -------------------------------------------------------------------------------- /apps/auth/src/auth.controller.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/auth/src/auth.controller.ts -------------------------------------------------------------------------------- /apps/auth/src/auth.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/auth/src/auth.module.ts -------------------------------------------------------------------------------- /apps/auth/src/auth.service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/auth/src/auth.service.ts -------------------------------------------------------------------------------- /apps/auth/src/db/data-source.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/auth/src/db/data-source.ts -------------------------------------------------------------------------------- /apps/auth/src/db/migrations/1671445944422-InitDB.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/auth/src/db/migrations/1671445944422-InitDB.ts -------------------------------------------------------------------------------- /apps/auth/src/db/migrations/1671446426001-SecondMigration.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/auth/src/db/migrations/1671446426001-SecondMigration.ts -------------------------------------------------------------------------------- /apps/auth/src/dtos/existing-user.dto.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/auth/src/dtos/existing-user.dto.ts -------------------------------------------------------------------------------- /apps/auth/src/dtos/new-user.dto.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/auth/src/dtos/new-user.dto.ts -------------------------------------------------------------------------------- /apps/auth/src/interfaces/auth.service.interface.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/auth/src/interfaces/auth.service.interface.ts -------------------------------------------------------------------------------- /apps/auth/src/jwt-request.interface.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/auth/src/jwt-request.interface.ts -------------------------------------------------------------------------------- /apps/auth/src/jwt-strategy.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/auth/src/jwt-strategy.ts -------------------------------------------------------------------------------- /apps/auth/src/jwt.guard.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/auth/src/jwt.guard.ts -------------------------------------------------------------------------------- /apps/auth/src/main.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/auth/src/main.ts -------------------------------------------------------------------------------- /apps/auth/tsconfig.app.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/auth/tsconfig.app.json -------------------------------------------------------------------------------- /apps/chat/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/chat/Dockerfile -------------------------------------------------------------------------------- /apps/chat/src/chat.controller.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/chat/src/chat.controller.ts -------------------------------------------------------------------------------- /apps/chat/src/chat.gateway.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/chat/src/chat.gateway.ts -------------------------------------------------------------------------------- /apps/chat/src/chat.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/chat/src/chat.module.ts -------------------------------------------------------------------------------- /apps/chat/src/chat.service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/chat/src/chat.service.ts -------------------------------------------------------------------------------- /apps/chat/src/dtos/CallDetails.dto.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/chat/src/dtos/CallDetails.dto.ts -------------------------------------------------------------------------------- /apps/chat/src/dtos/NewMessage.dto.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/chat/src/dtos/NewMessage.dto.ts -------------------------------------------------------------------------------- /apps/chat/src/main.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/chat/src/main.ts -------------------------------------------------------------------------------- /apps/chat/tsconfig.app.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/chat/tsconfig.app.json -------------------------------------------------------------------------------- /apps/presence/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/presence/Dockerfile -------------------------------------------------------------------------------- /apps/presence/src/interfaces/ActiveUser.interface.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/presence/src/interfaces/ActiveUser.interface.ts -------------------------------------------------------------------------------- /apps/presence/src/main.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/presence/src/main.ts -------------------------------------------------------------------------------- /apps/presence/src/presence.controller.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/presence/src/presence.controller.ts -------------------------------------------------------------------------------- /apps/presence/src/presence.gateway.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/presence/src/presence.gateway.ts -------------------------------------------------------------------------------- /apps/presence/src/presence.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/presence/src/presence.module.ts -------------------------------------------------------------------------------- /apps/presence/src/presence.service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/presence/src/presence.service.ts -------------------------------------------------------------------------------- /apps/presence/tsconfig.app.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/apps/presence/tsconfig.app.json -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /libs/shared/src/entities/conversation.entity.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/entities/conversation.entity.ts -------------------------------------------------------------------------------- /libs/shared/src/entities/friend-request.entity.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/entities/friend-request.entity.ts -------------------------------------------------------------------------------- /libs/shared/src/entities/message.entity.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/entities/message.entity.ts -------------------------------------------------------------------------------- /libs/shared/src/entities/user.entity.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/entities/user.entity.ts -------------------------------------------------------------------------------- /libs/shared/src/guards/auth.guard.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/guards/auth.guard.ts -------------------------------------------------------------------------------- /libs/shared/src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/index.ts -------------------------------------------------------------------------------- /libs/shared/src/interceptors/user.interceptor.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/interceptors/user.interceptor.ts -------------------------------------------------------------------------------- /libs/shared/src/interfaces/conversations.repository.interface.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/interfaces/conversations.repository.interface.ts -------------------------------------------------------------------------------- /libs/shared/src/interfaces/friend-requests.repository.interface.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/interfaces/friend-requests.repository.interface.ts -------------------------------------------------------------------------------- /libs/shared/src/interfaces/messages.repository.interface.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/interfaces/messages.repository.interface.ts -------------------------------------------------------------------------------- /libs/shared/src/interfaces/shared.service.interface.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/interfaces/shared.service.interface.ts -------------------------------------------------------------------------------- /libs/shared/src/interfaces/user-jwt.interface.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/interfaces/user-jwt.interface.ts -------------------------------------------------------------------------------- /libs/shared/src/interfaces/user-request.interface.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/interfaces/user-request.interface.ts -------------------------------------------------------------------------------- /libs/shared/src/interfaces/users.repository.interface.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/interfaces/users.repository.interface.ts -------------------------------------------------------------------------------- /libs/shared/src/modules/postgresdb.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/modules/postgresdb.module.ts -------------------------------------------------------------------------------- /libs/shared/src/modules/redis.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/modules/redis.module.ts -------------------------------------------------------------------------------- /libs/shared/src/modules/shared.module.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/modules/shared.module.ts -------------------------------------------------------------------------------- /libs/shared/src/repositories/base/base.abstract.repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/repositories/base/base.abstract.repository.ts -------------------------------------------------------------------------------- /libs/shared/src/repositories/base/base.interface.repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/repositories/base/base.interface.repository.ts -------------------------------------------------------------------------------- /libs/shared/src/repositories/conversations.repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/repositories/conversations.repository.ts -------------------------------------------------------------------------------- /libs/shared/src/repositories/friend-requests.repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/repositories/friend-requests.repository.ts -------------------------------------------------------------------------------- /libs/shared/src/repositories/messages.repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/repositories/messages.repository.ts -------------------------------------------------------------------------------- /libs/shared/src/repositories/users.repository.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/repositories/users.repository.ts -------------------------------------------------------------------------------- /libs/shared/src/services/redis-cache.service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/services/redis-cache.service.ts -------------------------------------------------------------------------------- /libs/shared/src/services/shared.service.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/src/services/shared.service.ts -------------------------------------------------------------------------------- /libs/shared/tsconfig.lib.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/libs/shared/tsconfig.lib.json -------------------------------------------------------------------------------- /nest-cli.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/nest-cli.json -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/package.json -------------------------------------------------------------------------------- /tsconfig.build.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/tsconfig.build.json -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/tsconfig.json -------------------------------------------------------------------------------- /webpack-hmr.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Jon-Peppinck/messenger-api/HEAD/webpack-hmr.config.js --------------------------------------------------------------------------------