Skip to content

akshatb622/task-manager-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

task-manager-api

The Task-Manager-Api with authentication support for different users. It provides different functionalities like

  1. Create User
  2. Create Task
  3. Login User
  4. Logout User
  5. Logout from all sessions
  6. Fetch Your Profile
  7. Get Your Tasks
  8. Update User
  9. Update Task
  10. Upload a profile pic or avatar.
  11. Delete avatar
  12. Delete User
  13. Delete Task

Technologies Used :

  1. The app is primarily built on NodeJS which is used as the backend . Express is used to create the server.Mongodb is used as the database to store the data of different users and their tasks.
  2. JWT is used to integrate the authentication service into the app.
  3. Sendgrid is used to send auto generated emails to the users when they signup or delete their profile.
  4. Bcrypt is used to hash the passwords provided by the users.

Requirements :

You should have the following tools installed in your system.

  1. Node
  2. npm
  3. Git
  4. MongoDB Database installed and running on your system.
  5. Robo-3t or MongoDB Compass installed on your system to see the data in the database.
  6. Postman (to test the api end-points)

Common setup :

Clone the repo and install the dependencies.

  1. git clone https://github.com/akshatb622/task-manager-api.git

  2. npm install

  3. Create an account on Sendgrid.com to get your api-key to send the auto generated emails.

  4. Make a folder in root of the project with the name config. Inside the folder make a file dev.env(which is used to set the local environment variables).

  5. Now edit the dev.env file as :
    i) PORT=3000
    ii) SENDGRID_API_KEY=<Your api key that you got from step 3>
    iii) JWT_SECRET=Any text which should be your secret
    iv) MONGODB_CONNECTION_STRING=mongodb://127.0.0.1:27017/task-manager-api

  6. Save the file.

  7. Open the file /src/emails/account.js and set the from property of all sgMail.send functions to your email-id registered on Sendgrid.com.

  8. Save the File.

Running the App :

Before following the steps below ensure that mongodb is running on your system.

  1. To start the express server, run the following :
    npm run dev

  2. Open Postman and start sending requests to http://localhost:3000 and see what you get.

About

A multi-user Task management API integrated with user-authentication where users can create, update, delete tasks and do much more.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors