A full-stack task management application built with React, Vite, Node.js, Express, and MySQL.
- Authentication — Register & Login with JWT tokens
- Workspaces — Organize teams and members
- Projects — Group tasks within workspaces with color coding
- Tasks — Kanban board and list views with priorities and due dates
- Analytics — Dashboard with task statistics and breakdown charts
task-nexus/
├── server/ # Node.js + Express backend
│ ├── server.js # Main server file (all routes)
│ └── package.json
├── client/ # React + Vite frontend
│ ├── src/
│ │ ├── App.jsx # Main app with routing
│ │ ├── App.css # Global styles
│ │ ├── main.jsx # Entry point
│ │ ├── modules/
│ │ │ ├── context/AuthContext.jsx # Auth state management
│ │ │ ├── Layout.jsx # App shell (sidebar + nav)
│ │ │ ├── UI/ # Reusable UI components
│ │ │ └── TaskComponents/ # Task components
│ │ └── pages/
│ │ ├── Login.jsx
│ │ ├── Register.jsx
│ │ ├── Dashboard.jsx
│ │ ├── Workspaces.jsx
│ │ ├── Projects.jsx
│ │ └── Tasks.jsx
│ ├── vite.config.js
│ └── package.json
├── database.sql # MySQL schema
└── README.md
- Fork this repository by clicking the Fork button at the top right of the page.
- Clone your forked repo:
git clone https://github.com/<your-username>/code-relay-foobar.git cd code-relay-foobar
- Follow the setup instructions below to get the app running locally.
- Node.js v16 or higher
- MySQL (via XAMPP, WAMP, or standalone)
- Start your MySQL server.
- Import the schema to create the database and tables:
cd task-nexus mysql -u root -p < database.sql
Create a .env file in the task-nexus/server/ directory:
DB_HOST=localhost
DB_USER=root
DB_PASSWORD=
DB_NAME=task_nexus
PORT=5000Adjust credentials to match your local MySQL setup.
cd task-nexus/server
npm install
npm startThe server runs on http://localhost:5000
Open a new terminal:
cd task-nexus/client
npm install
npm run devThe client runs on http://localhost:3000
| Layer | Technology |
|---|---|
| Frontend | React 18, Vite, Axios, React Router, Lucide Icons |
| Backend | Node.js, Express, MySQL2, JSON Web Tokens |
| Database | MySQL with relational schema |
| Styling | Vanilla CSS with glassmorphism design |