This repository contains the back-end of a software to manage projects, it's tasks and users.
The main features are detailed below:
- JWT Authentication
- Password Recovery / Password Reset
- File upload
- Project CRUD
- Task CRUD
- User CRUD
- User addresses CRUD
- Schema validation
- Internationalization
- Mailing notification services
- Projects pagination
Technologies used to develop the features mentioned above.
- AdonisJS
- ESLint for code linting
- NPM / Yarn as package managers
- Validator
- Docker
- PostgreSQL to store projects, users, user addresses and file paths
- Migrations for database versioning
- Redis and Kue to manage mailing notification jobs
- Sentry integration to check the application health on production environment
- Transactions
After cloning the repository, it is mandatory to install all the dependencies this software needs. You can choose your favorite package manager: Yarn or NPM. If you're a yarn user:
yarn install
However, if NPM fits better for you, just run the command:
npm install
Once you have all the dependencies installed, run the migrations to startup your PostgreSQL database.
adonis migration:run