Agile planning · Kanban · Sprints · Daily to‑dos

One workspace, every task in sync.

Karma Sync unites agile planning, Kanban workflows, sprint tracking, and daily personal to‑dos into a single, intuitive workspace for individuals and teams.

Node.js 18.0.0 React 18.2.0 Express 4.18.2 MongoDB MIT Licensed
Overview

Stop context‑switching between five different tools.

Karma Sync eliminates context switching by combining robust team‑based Scrum and Kanban project management with personal productivity tracking.

Whether you're running multi‑week sprints with story estimations or managing everyday personal tasks, Karma Sync keeps progress synchronized and transparent — for one person or an entire team.

8
Core feature areas
7
API resource groups
2
Roles: PM & Developer
Key features

Built for the full lifecycle of a task — from idea to shipped.

Eight connected surfaces cover team planning and personal productivity without leaving the app.

01 · access

Project management

Personal or collaborative projects with role‑based access: Project Managers control settings and sprints, Developers own their issues.

02 · board

Interactive Kanban board

Fluid drag‑and‑drop across To‑Do → In Progress → Done, with instant status sync and visual priority badges.

03 · cadence

Sprint & story lifecycle

Sprints move Planned → Active → Completed/Cancelled; stories move Draft → Ready → In Progress → Done with live progress bars.

04 · triage

Task management & tagging

Estimates, priorities from Low to Urgent, due dates, and a flexible tag taxonomy for technology, feature, and workflow.

05 · discuss

Comments & @mentions

Threaded discussion on every task and issue card, with backend‑validated @username mentions and UI highlighting.

06 · audit

Project activity log

A centralized trail of status transitions, sprint events, story updates, and role changes — surfaced as a dashboard widget.

07 · personal

Personal daily to‑dos

A productivity hub separate from team boards — categorize by Work, Health, Study, set reminders and priority tiers.

08 · identity

Auth & email workflows

JWT authentication, OTP email verification at signup, and OTP‑based password recovery — rate‑limited to avoid notification fatigue.

Tech stack

A conventional MERN stack, deliberately kept lightweight.

Frontend

React 18 · Hooks / Context React Router v6 react-beautiful-dnd Recharts Bootstrap 5 FontAwesome React Icons React Toastify Axios

Backend

Node.js ≥18.x / 22.x Express.js · MVC MongoDB Atlas + Mongoose jsonwebtoken bcryptjs Nodemailer EmailJS
Project structure

A client and server, cleanly separated.

karmasync/
client/                 # React frontend application
├── public/               # Static assets, HTML template, manifest
└── src/
    ├── api/              # Axios API service integrations
    ├── components/       # BoardManager, Dashboard, SprintManager,# StoryManager, Todos, ...
    ├── context/          # Global state (AuthContext, etc.)
    ├── styles/           # Modular CSS stylesheets
    ├── config.js         # Frontend runtime configuration
    └── App.js            # Application entry & routing

server/                 # Express.js backend API
├── controllers/          # Auth, Projects, Sprints, Tasks, ...
├── middleware/           # JWT authentication & route guards
├── models/               # User, Project, Task, Sprint, Story, Todo, Activity
├── routes/               # Express route definitions
├── services/             # Activity logger and notification services
└── server.js             # Express server bootstrap & MongoDB connection
API endpoints

Seven resource groups, one consistent shape.

ResourceBase routeDescription
Auth/api/authUser registration, login, OTP verification, password reset
Projects/api/projectsProject CRUD, collaborator management, role assignments
Sprints/api/sprintsSprint creation, activation, completion, cancellation
Tasks & issues/api/tasksTask creation, status updates, comments, @mentions
User stories/api/user-storiesStory breakdown, task mapping, progress aggregation
Todos/api/todosPersonal daily to‑do CRUD operations
Users/api/usersUser profile retrieval and account updates
Health/api/health, /healthAPI and MongoDB cluster health check
Getting started

Four steps from clone to running locally.

Requires Node.js 18+, npm 9+ (or yarn), and a MongoDB Atlas cluster or local instance.

01

Clone the repo

git clone https://github.com/bsurajpatra/karmasync.git cd karmasync
02

Install dependencies

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

Configure environment

server/.env MONGODB_URI, JWT_SECRET, EMAIL_USER, EMAIL_PASS client/.env REACT_APP_API_URL
04

Run both servers

cd server && npm run dev # → localhost:5000 cd client && npm start # → localhost:3000

Contributions welcome — fork it, sync it, ship it.