Skip to content

Latest commit

Β 

History

17 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Antarman 🎯

Find Your Flow. Own Your Time.
A smart Pomodoro productivity app with user authentication and persistent data.
Built by Team Gear β€” Pranay Tanpure (Lead), Vipin Rathod, Tushar Supekar, Kartik Rokade, Virdhaval Sawant


Project Structure

antarman/
β”œβ”€β”€ backend/
β”‚   β”œβ”€β”€ server.js                  # Express app entry point
β”‚   β”œβ”€β”€ package.json
β”‚   β”œβ”€β”€ .env.example               # Copy to .env and set JWT_SECRET
β”‚   β”œβ”€β”€ routes/
β”‚   β”‚   β”œβ”€β”€ auth.js                # POST /api/auth/register, /login
β”‚   β”‚   └── user.js                # Profile, tasks, stats, settings
β”‚   β”œβ”€β”€ middleware/
β”‚   β”‚   └── authMiddleware.js      # JWT verification
β”‚   β”œβ”€β”€ utils/
β”‚   β”‚   └── fileStore.js           # JSON file read/write helpers
β”‚   └── data/
β”‚       └── users.json             # Flat-file database (auto-created)
β”‚
└── frontend/
    β”œβ”€β”€ index.html                 # Login / Register page
    β”œβ”€β”€ app.html                   # Main Pomodoro app (auth-protected)
    β”œβ”€β”€ css/
    β”‚   β”œβ”€β”€ auth.css
    β”‚   └── app.css
    └── js/
        β”œβ”€β”€ auth.js                # Login/register API calls
        └── app.js                 # Timer, tasks, stats, settings

Setup & Run

# 1. Create your .env file
copy backend\.env.example backend\.env
# Edit backend/.env β†’ set:  JWT_SECRET=some_long_random_string

# 2. Install dependencies
npm run install

# 3. Start everything
npm start

Open http://localhost:5000 β€” frontend and API both served from one process.

For auto-reload during development:

npm run dev

data/users.json is created automatically on first registration β€” no database setup needed.


API Reference

Method Route Auth Description
POST /api/auth/register β€” Register new user
POST /api/auth/login β€” Login, returns JWT
GET /api/user/profile βœ“ Get profile + settings + tasks
PUT /api/user/settings βœ“ Update timer settings
GET /api/user/tasks βœ“ List tasks
POST /api/user/tasks βœ“ Add task
PATCH /api/user/tasks/:id βœ“ Toggle complete / edit
DELETE /api/user/tasks/:id βœ“ Delete task
POST /api/user/session βœ“ Log completed focus session
GET /api/user/stats βœ“ Get stats + daily log

All protected routes require: Authorization: Bearer <token>


Features

  • πŸ” JWT authentication with bcrypt password hashing
  • ⏱ Pomodoro timer β€” Focus / Short Break / Long Break
  • πŸ”„ Animated SVG countdown ring
  • βœ… Task manager with per-user persistence
  • πŸ“Š Daily + all-time stats
  • βš™ Configurable durations, auto-start, sound toggle
  • πŸ”” Browser notifications + Web Audio API chime
  • πŸ’Ύ All data stored in data/users.json β€” no database required

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages