Skip to content

laraib-sidd/task_manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Task Manager API

A full-featured Restfull API.

Features

⚡️ Rest API
⚡️ Authentication
⚡️ Database Support
⚡️ Image Uploading
⚡️ Pagination
⚡️ Sorting
⚡️ Email Service

To view a live example, click here

Getting Started 🚀

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.

Prerequisites 📋

You'll need Git and Node.js (which comes with NPM) installed on your computer.


How To Use 🔧

From your command line, first clone taskmanager:

# Clone this repository
$ git clone https://github.com/laraib-sidd/task_manager.git

# Go into the repository
$ cd task_manager

Then you can install the dependencies either using NPM or Yarn:

Using NPM:

# Install dependencies
$ npm install

# Start development server
$ npm run develop

Using Yarn:

# Install dependencies
$ yarn

# Start development server
$ yarn develop
ApiKeys required:
* MongoDB URI
* Mailgun ApiKey
* Mailgun Domain 

NOTE: If your run into issues installing the dependencies with NPM, use this command:

# Install dependencies with all permissions
$ sudo npm install --unsafe-perm=true --allow-root

Once your server has started, you can access the api at http://localhost:3000/ .


Instructions:

Registering

Do a post request at https://localhost:3000/user/register with proper data to register a user.:

Upload user avatar

Do a post request at https://localhost:3000/user/me/avatar with a file to upload it.

Login

Do a post request at https://localhost:3000/user/login with valid credentials.

View Profile

Do a get request at https://localhost:3000/user/me with valid details regardig the task.

Create a task

Do a post request at https://localhost:3000/task/ with valid details regardig the task.

Delete a task

Do a delete request at https://localhost:3000/task/:id with valid details regardig the task.

Delete profile

Do a delete request at https://localhost:3000/user/me with valid details regardig the task.


Postaman Collection

  • Here is the shareble link to the postman collection with all the routes : Colllection

Testing 👥

You can test the Rest api using the jest test build using:

npm run test

Authors

License 📄

This project is licensed under the MIT License - see the LICENSE.md file for details