A to-do task manager application with functions to add, update, remove tasks. User login functionality has been implemented. Login sessions based on JWT (JSON Web Token) authentication strategy. Tokens are encrypted using RSA based private-public key mechanism.
- Frontend static file server based on express
- Server API based on node.js and express.js
- Database based on MongoDB and accessed through mongoose
- JWT based authentication based on jsonwebtoken
- Server monitoring based on nodemon
- Code linting and styling based on eslint and prettier
Use the package manager yarn (preferred) or npm to install the required dependencies.
Clone the repository
git clone https://github.com/Vedant1202/to-do-task-manager.git
cd to-do-task-manager
To generate private-public keys:
-
On a Linux/Mac: You can choose to use ssh-keygen.
-
For all OS: You can use an online key pair generator like this.
-
After generating keys, name then as
public.key
andprivate.key
and copy the files inbackend/keys/
To install backend dependencies
- Using yarn
cd backend
yarn install
- Using npm
cd backend
npm install
To install frontend dependencies
- Using yarn
cd frontend
yarn install
- Using npm
cd frontend
npm install
To start backend API
- Using yarn
cd backend
yarn start
- Using npm
cd backend
npm start
- API is live on
http://localhost:4000/
To start frontend static server
- Using yarn
cd frontend
yarn start
- Using npm
cd frontend
npm start
- Go to
http://localhost:3000/login
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Please make sure to update documentation as appropriate.