Skip to content
shinigamichPublic

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Advanced Project & Task Management Platform

A production-ready full-stack web application for project and task management with role-based access control, modern UI, drag-and-drop ordering, optimistic updates, and secure JWT authentication.

Tech Stack

Frontend (/client)

  • React (Vite)
  • React Router
  • TailwindCSS
  • Axios
  • Framer Motion
  • DnD Kit (drag and drop)
  • React Hot Toast

Backend (/server)

  • Node.js + Express
  • MongoDB + Mongoose
  • JWT authentication
  • bcrypt password hashing
  • Zod validation
  • Express rate limit + Helmet
  • MVC architecture
  • Centralized error handling

Features

Auth & Security

  • Register / Login
  • JWT-protected routes
  • Role system (admin, user)
  • Password hashing with bcrypt
  • Input validation middleware
  • API rate limiting

User Features

  • Dashboard with task/project statistics
  • Create/Edit/Delete projects
  • Create/Edit/Delete tasks
  • Task status (todo, in-progress, completed)
  • Due dates and priorities
  • Search, filtering, pagination
  • Profile page and profile update

Admin Features

  • View all users
  • Delete non-admin users
  • Platform statistics

UI/UX

  • Responsive layout
  • Sidebar navigation
  • Light / dark theme toggle
  • Modal forms
  • Empty and error states
  • Loading states
  • Smooth transitions
  • Toast notifications
  • Drag-and-drop task reordering
  • Optimistic UI updates

Project Structure

/
├── client/
│   ├── src/
│   │   ├── components/
│   │   ├── lib/
│   │   ├── pages/
│   │   ├── state/
│   │   └── styles/
│   ├── .env.example
│   └── package.json
├── server/
│   ├── src/
│   │   ├── config/
│   │   ├── controllers/
│   │   ├── middleware/
│   │   ├── models/
│   │   ├── routes/
│   │   ├── tests/
│   │   ├── utils/
│   │   └── validators/
│   ├── .env.example
│   └── package.json
└── package.json

Setup Instructions

1) Install dependencies

From the repository root:

npm install
cd server && npm install
cd ../client && npm install

2) Configure environment variables

Create environment files:

  • server/.env from server/.env.example
  • client/.env from client/.env.example

3) Start MongoDB

Run local MongoDB instance (or update MONGO_URI to your hosted DB).

4) Run development servers

From root:

npm run dev

This starts:

  • Backend: http://localhost:5000
  • Frontend: http://localhost:5173

5) Seed demo data (optional)

From server:

npm run seed

This creates:

  • 1 admin user
  • 1 regular user
  • Sample projects and tasks for both accounts

Seed credentials are configurable via SEED_* variables in server/.env.

Scripts

Root

  • npm run dev - Run client + server together
  • npm run dev:server - Run server only
  • npm run dev:client - Run client only
  • npm run build - Build frontend
  • npm run test - Run backend tests

Server

  • npm run dev - Nodemon server
  • npm run start - Production server
  • npm run test - Unit tests (Vitest)
  • npm run seed - Seed demo users/projects/tasks

Client

  • npm run dev - Vite dev server
  • npm run build - Production build
  • npm run preview - Preview production build

API Overview

Auth

  • POST /api/auth/register
  • POST /api/auth/login
  • GET /api/auth/me

Profile

  • GET /api/users/profile
  • PATCH /api/users/profile

Dashboard

  • GET /api/dashboard/stats

Projects

  • GET /api/projects
  • GET /api/projects/:id
  • POST /api/projects
  • PATCH /api/projects/:id
  • DELETE /api/projects/:id

Tasks

  • GET /api/tasks
  • POST /api/tasks
  • PATCH /api/tasks/:id
  • DELETE /api/tasks/:id
  • PATCH /api/tasks/reorder/bulk

Admin

  • GET /api/admin/users
  • DELETE /api/admin/users/:id
  • GET /api/admin/stats

Notes

  • Registration always creates user accounts for security.
  • Use npm run seed in server to generate a ready-to-demo admin and user account.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages