This is a RESTful API for customer recruitment
├── src
├── .env.sample
├── .eslintrc
├── .gitignore
├── .prettierrc
├── Makefile
├── nest-cli.json
├── package.json
├── README.md
└── tsconfig.build.json
└── tsconfig.json
Customer Model
- id
- password
- refreshToken
- role [ADMIN, USER]
- code
- emailConfirm
- createdAt
- updatedAt
- deletedAt
- Sign up with [accessToken and RefreshToken]
- Sign in
- Ability to verify customer's account after signup with activation code;
- Resend activation code through email
- Create tokens ( A refresh token when access token get expired)
- Logout
- Role [ADMIN, USER]
- Get customer
- Fetch customers with pagination
- Change of password
- Update customer
- Soft delete customer
- Search functionality for customer by Role, id and email
This project uses Nest.js It has the following dependencies:
- GraphQl
- Postgres Database
- Prisma
- ESLint & Prettier
- Ensure you have NodeJS installed by entering
node -v
on your terminal If you don't have NodeJS installed, go to the NodeJS Website, and follow the download instructions
- After cloning the repository, create a
.env
file from.env.sample
and set your local.env.
variable(s).
cp .env.sample .env
- Install the dependencies
npm run install
- You can run the server using
npm run start:dev
How to run all tests locally
make install
- Installs dependencies.make dev
- Run the servermake build
make migrate
- Generate migration.make lint
- Lint code.make studio
- Opens up a prisma virtual interface for your databasemake seed
- run seed
- Public API documentation of this project is available on postman docs
This project is under the MIT LICENSE