Skip to content

vishal2133/nexus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Nexus β€” Personal Life OS

A full-stack personal operating system built for students who want to stop managing their life across 10 different apps and start actually getting things done.

Stack ORM Status


What is Nexus?

Nexus is a dark-themed, single-user life dashboard built to answer two questions every day:

"What should I do right now?" "Why am I not doing it?"

It combines task management, habit tracking, Pomodoro focus sessions, exam prep, project management, and anti-procrastination mechanics into one cohesive system β€” all in a clean, opinionated UI that feels like a real product, not a side project.

Built by a BTC Computer Science student, for students.


Features

Core Dashboard

  • Daily check-in flow β€” every morning, log your energy level (Low / Medium / High) and make a daily promise to yourself before the dashboard unlocks
  • Smart top-3 scheduler β€” the system suggests your 3 most important tasks based on deadline, priority, and energy level; you can swap any suggestion with tasks from your backlog before confirming
  • Daily promise banner β€” your morning promise stays visible on the dashboard all day
  • End-of-day reflection β€” appears automatically after 8 PM, asks how the day went against your promise
  • Unified timeline β€” see classes, study blocks, gym, and leisure in one scrollable day view

Task System

  • Full CRUD task management with priority (URGENT / HIGH / MEDIUM / LOW) and energy requirement (HIGH / MEDIUM / LOW)
  • Auto-ranking scheduler β€” scores every task by deadline proximity Γ— priority Γ— energy match
  • Filter by status, sort by priority / due date / created date
  • Status context menu (mark pending, in progress, done, skipped)
  • Overdue detection with visual indicators

AI Task Suggestions

  • When adding a task, an AI tab suggests 4 personalized tasks based on your current backlog context
  • Powered by Groq (free tier, llama-3.1-8b-instant)
  • Suggestions are subject-aware (Algorithms, CAO, Data Science, etc.), gym-aware, and leisure-balanced
  • Click any suggestion to pre-fill the form, then confirm or edit

Unstuck Engine

  • Click any task to open the Unstuck modal
  • Shows the smallest possible next step (auto-generated or manually set)
  • Shows last progress note and last worked timestamp
  • 5-minute start timer β€” "just try it" approach with a circular countdown
  • After 5 minutes: "Keep going?" prompts a full 25-minute Pomodoro extension

Focus System

  • Pomodoro timer (15 / 25 / 50 min presets) with circular progress ring
  • Tracks actual elapsed time on stop β€” not the full session duration
  • Links sessions to top-3 tasks
  • Session history with timestamps and coin earnings per session
  • Daily focus stats (sessions count, total minutes)

Commitment Coins (Anti-Procrastination)

  • Earn coins by completing Pomodoro sessions (1 coin per 5 minutes focused)
  • Bet coins on completing a task by a deadline β€” win double or lose all
  • Active pledges show on dashboard with "Done βœ“" / "Failed βœ—" resolve buttons
  • Expired pledges flagged with visual warning
  • Coin balance shown in sidebar and on focus page

Habit System

  • Daily habit checklist with streak tracking
  • Frequency options: Daily / 3Γ— per week / Weekdays
  • Streak displayed as fire badge β€” breaks on missed days
  • GitHub-style 6-month heatmap per habit (expandable on Habits page)
  • Completion rate stats

Micro Habit Tracker

  • Tap-to-increment counters separate from main habits
  • Quick presets: Water (glasses), Pushups (reps), Meals
  • Progress bar fills with glow effect when daily target is hit
  • Decrement button for corrections
  • Resets automatically each day

Subject Progress Tracker

  • Dedicated Subjects page for exam prep
  • Add subjects with color coding and exam dates
  • Add topics per subject, check them off as you revise
  • Progress bar per subject with percentage coverage
  • Days-until-exam countdown that turns red when close
  • Daily topic budget calculated automatically (remaining topics Γ· days left)
  • Quick-add presets for all 5 subjects
  • Overall coverage stats across all subjects

Exam Countdown Widget

  • Lives on the dashboard, always visible
  • Shows days remaining per exam with urgency-based color (green β†’ orange β†’ red)
  • Highlights the most neglected subject
  • Shows daily topic budget required to finish on time

Notes / Quick Capture

  • Dedicated Notes page with Ctrl+Enter to save
  • Tag notes to a subject for context
  • Filter notes by subject
  • Long notes collapse with "show more" toggle
  • No context switching β€” everything stays inside Nexus

Weekly Review

  • Separate Review page auto-populated with completed and ignored tasks from the last 7 days
  • Weekly stats: tasks finished, tasks missed, focus time, habit days
  • Write next week's plan and save it
  • Previous week's plan shown for reference
  • Soft nudge to review on weekends

Project Tracker (Kanban)

  • Lightweight Kanban for coding projects
  • Three columns: To Do / In Progress / Done
  • Drag-and-drop cards between columns
  • Add cards inline by typing and pressing Enter
  • Color-coded projects with sidebar project list
  • Done cards display with strikethrough styling

Schedule / Timetable

  • Visual timeline with 1-hour grid from 6 AM to 10 PM
  • Live "now" line showing current time
  • Color-coded event blocks by type (Class / Gym / Leisure / Personal)
  • Events repeat on selected days of the week
  • Morning check-in shows today's events as quick confirm/skip checkboxes

Analytics

  • 8 stat cards: completion rate, tasks done this week, focus time, reliability score, overdue count, best focus hour, top-3 completed, active habits
  • Bar charts for daily focus minutes and habit completions over 7 days
  • Peak focus hours heatmap (which hour of day you focus most)
  • Donut charts for tasks by priority and status
  • Health score bars: completion rate, pledge reliability, overdue ratio
  • Habit streak leaderboard with color-coded bars

Energy History Chart

  • 30-day energy trend line chart built from daily check-in data
  • Smooth spline curve with colored dots (red = low, amber = medium, purple = high)
  • Best day and worst day cards (useful for scheduling harder vs easier tasks)
  • Gradient area fill under the curve

Nexus Streak

  • Sidebar streak badge that tracks consecutive days you complete the daily check-in
  • Color shifts: gray (0) β†’ blue (3+) β†’ glowing orange (7+)
  • Glow effect intensifies as streak grows
  • Best streak tracked separately

Tech Stack

Layer Technology
Frontend React 18, TypeScript, Vite
Styling CSS variables (custom dark design system), Tailwind (utility classes)
State Zustand
Routing React Router v6
HTTP Axios with JWT interceptors
Backend Node.js, Express 4, TypeScript
Database PostgreSQL 18
ORM Prisma 7
Validation Zod
Auth JWT (jsonwebtoken) + bcrypt
AI Groq API (llama-3.1-8b-instant) β€” free tier
Fonts Syne (display), Outfit (body), JetBrains Mono (numbers)

Database Schema

User
β”œβ”€β”€ Task (priority, energy, status, isTop3, smallestNextStep, lastProgressNote)
β”œβ”€β”€ Subject β†’ Topic[]
β”œβ”€β”€ Event (class, gym, leisure, personal β€” recurring by day of week)
β”œβ”€β”€ Habit β†’ HabitLog[]
β”œβ”€β”€ MicroHabit β†’ MicroHabitLog[]
β”œβ”€β”€ PomodoroLog
β”œβ”€β”€ Pledge (commitment coins)
β”œβ”€β”€ DailyLog (energy, promise, reflection, top3Confirmed)
β”œβ”€β”€ Note (linked to task or subject)
β”œβ”€β”€ WeeklyReview
└── Project β†’ ProjectCard[]

Project Structure

nexus/
β”œβ”€β”€ server/
β”‚   β”œβ”€β”€ prisma/
β”‚   β”‚   β”œβ”€β”€ schema.prisma
β”‚   β”‚   └── migrations/
β”‚   └── src/
β”‚       β”œβ”€β”€ routes/
β”‚       β”œβ”€β”€ controllers/
β”‚       β”œβ”€β”€ services/          ← all business logic lives here
β”‚       β”œβ”€β”€ middleware/
β”‚       β”œβ”€β”€ schemas/           ← Zod validation
β”‚       └── lib/               ← prisma client, jwt utils
└── client/
    └── src/
        β”œβ”€β”€ pages/             ← Dashboard, Tasks, Habits, Focus, Schedule,
        β”‚                         Subjects, Notes, Analytics, Projects, Review
        β”œβ”€β”€ components/
        β”‚   β”œβ”€β”€ ui/            ← Button, Card, Badge, Sidebar
        β”‚   β”œβ”€β”€ dashboard/     ← Top3Scheduler, FocusTimer, HabitTracker,
        β”‚   β”‚                     PledgeCard, ExamCountdown, MicroHabitTracker,
        β”‚   β”‚                     EnergyChart
        β”‚   β”œβ”€β”€ tasks/         ← TaskList, AddTaskModal (AI suggestions), UnstuckModal
        β”‚   └── checkin/       ← DailyCheckIn, ReflectionPrompt, EventCheckIn
        β”œβ”€β”€ store/             ← Zustand stores (one per domain)
        β”œβ”€β”€ api/               ← Axios API functions (one per domain)
        └── hooks/

Getting Started

Prerequisites

  • Node.js 20+
  • PostgreSQL 15+ (local or Supabase free tier)
  • Groq API key (free at console.groq.com)

1. Clone and install

git clone https://github.com/yourusername/nexus.git
cd nexus

# Install server dependencies
cd server && npm install

# Install client dependencies
cd ../client && npm install

2. Configure environment

Create server/.env:

DATABASE_URL="postgresql://postgres:yourpassword@localhost:5432/nexus_db"
JWT_SECRET="your-secret-key-change-this"
PORT=5000

Create client/.env:

VITE_GROQ_API_KEY=your_groq_api_key_here

3. Set up the database

cd server
npx prisma migrate dev --name init
npx prisma generate

4. Run the app

# Terminal 1 β€” backend
cd server && npm run dev

# Terminal 2 β€” frontend
cd client && npm run dev

Open http://localhost:5173, register an account, and start building your day.


Pages

Route Description
/dashboard Home β€” daily check-in, top-3, timeline, focus, habits, pledges, exam countdown
/tasks Full task list with filters, sort, status management
/habits Habit list with streaks and heatmaps
/focus Full-screen Pomodoro timer + pledge system
/schedule Weekly timetable with visual time grid
/subjects Exam prep β€” subjects, topics, progress tracking
/notes Quick capture with subject tagging
/projects Kanban board for coding projects
/analytics Stats, charts, energy trends, habit streaks
/review Weekly review β€” what finished, what was ignored, next week's plan

Design System

Nexus uses a custom dark design system called Obsidian OS β€” deep dark purple-tinted surfaces, violet accent, monospace number displays, and subtle glow effects.

--bg-base:      #06060a    /* page background */
--bg-card:      #111118    /* card surface */
--accent:       #6d65f0    /* primary violet */
--success:      #2dd4a0    /* teal green */
--warning:      #f5a623    /* amber */
--danger:       #f06060    /* soft red */

--font-display: 'Syne'           /* headings */
--font-body:    'Outfit'         /* paragraphs */
--font-mono:    'JetBrains Mono' /* numbers, labels, badges */

Roadmap

  • Chrome extension β€” block distracting sites during Pomodoro sessions
  • Push notifications β€” habit reminders, deadline alerts, streak at-risk warnings
  • Mobile app β€” React Native with Expo (same API, new UI layer)
  • AI daily briefing β€” morning summary generated from your actual data
  • Drag-to-reorder tasks
  • Keyboard shortcuts (N = new task, F = focus, C = check-in)
  • Export data as CSV
  • Accountability partner β€” share top-3 with a friend

Why I Built This

I was using 6 different apps β€” Notion for notes, Google Calendar for schedule, a habit app, a timer app, a to-do app, and my phone's notes for quick capture. Context switching between them killed my focus.

Nexus is the single system that replaces all of them. Every feature is something I actually use daily. The AI suggestions are tuned for my subjects and my life (gym, badminton, DSA, Btech CS exams). The anti-procrastination mechanics (unstuck engine, commitment coins, 5-min start timer) are built around the actual psychological barriers that stop students from starting.


License

MIT β€” use it, fork it, make it yours.


Built with obsession during exam season. Exams in 1 month. Send help.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages