Skip to content

saurav-misal/Task-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Task Management System

A full-stack, role-based Task Management System built with the PERN stack (PostgreSQL, Express, React, Node.js).

Architecture

  • Frontend: React (Vite), React Router, Tailwind CSS, Axios
  • Backend: Node.js, Express.js
  • Database: PostgreSQL
  • Security: JWT (JSON Web Tokens) Authentication, bcrypt password hashing

Features

  • Secure Authentication: User registration and login using JWT.
  • Role-Based Access Control: Differentiated access levels for user and admin.
  • Task Management: Full CRUD capabilities for task entities.
  • Responsive UI: Modern, mobile-first design implemented with Tailwind CSS.

Prerequisites

  • Node.js (v14+)
  • PostgreSQL

Environment Variables

Create a .env file in the server directory with the following variables:

PORT=5000
DB_USER=postgres
DB_HOST=localhost
DB_NAME=task_management
DB_PASSWORD=your_postgres_password
DB_PORT=5432
JWT_SECRET=your_jwt_secret

Setup & Installation

1. Database Configuration

Execute the initialization script to set up the relational schemas:

psql -U postgres -d task_management -f server/database/init.sql

2. Backend Initialization

cd server
npm install
npm run dev

3. Frontend Initialization

cd client
npm install
npm run dev

API Documentation

Method Endpoint Description Auth Required
POST /api/v1/auth/register Register new user account No
POST /api/v1/auth/login Authenticate user and return JWT No
POST /api/v1/tasks Create a new task Yes
GET /api/v1/tasks Retrieve tasks based on role permissions Yes
PUT /api/v1/tasks/:id Update existing task Yes
DELETE /api/v1/tasks/:id Remove task Yes

About

Full-stack Task Management System with React, Node.js, Express, PostgreSQL, JWT Authentication, and Role-Based Access Control.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors