ChronoStudy is a modern, executive-grade study tracking and productivity platform designed for students, researchers, and competitive exam candidates. Built with React Native, Expo Router, TypeScript, and Supabase, it provides continuous 1-second notification timer tracking, custom subject and chapter management, task calendar scheduling, score analytics, and 1-click summary reports.
- ⏱️ Live Continuous Study Timer: 1-second continuous notification drawer ticking with interactive Pause, Resume, and Stop buttons synced with the app state.
- 📚 Custom Subject & Chapter Manager: Create custom subjects, add topics/chapters, track completion progress, and mark revision lists (
⭐). - 📅 Interactive Task Calendar: Daily, weekly, and monthly goal tracker with an integrated monthly calendar modal view.
- 📊 Performance Analytics: Subject-wise time investment charts, daily study streaks, and test score record tracking.
- 📄 1-Click Downloadable Reports: Export structured daily and monthly study summary reports on demand.
- 🔐 Enterprise-Grade Security: PostgreSQL Row Level Security (RLS) ensuring strict user privacy.
- 📄 Product Requirements Document (PRD.md) — Core objectives, target user personas, functional specifications, and design tokens.
- 🏗️ System Architecture (ARCHITECTURE.md) — High-level sequence diagrams, data ERD, notification engine lifecycle, and RLS security model.
- Frontend: React Native, Expo SDK 52, Expo Router v4
- State & Hooks: React Context API, Custom React Hooks (
useAuth,useTasks,useSyllabus,useUserStats) - Backend / Database: Supabase (PostgreSQL, Row Level Security, Realtime WebSockets)
- Local Persistence: React Native AsyncStorage
- Notification Engine: Expo Notifications with custom Notification Categories & Action Listeners
git clone https://github.com/akash20065ray-sys/ChronoStudy.git
cd ChronoStudy
npm installCopy .env.example to .env:
cp .env.example .envFill in your Supabase credentials:
EXPO_PUBLIC_SUPABASE_URL=https://your-project.supabase.co
EXPO_PUBLIC_SUPABASE_ANON_KEY=your-anon-keynpx expo start- Scan the QR code using Expo Go on Android / iOS.
- Press
wto open web preview.
├── app/ # Expo Router file-based navigation
│ ├── (auth)/login.tsx # Authentication screen
│ └── (tabs)/ # Main application tab bar
│ ├── home.tsx # Dashboard, focus quote, streak, analytics
│ ├── tasks.tsx # Daily, weekly, monthly task management
│ ├── syllabus.tsx # Custom subject & chapter progress manager
│ ├── study/ # Live timer session logger & test records
│ └── settings.tsx # Report download & account settings
├── components/ # Reusable UI cards, modals, and progress bars
├── constants/ # Design system tokens (Indigo & Slate palette)
├── context/ # TimerContext & live notification listener engine
├── hooks/ # Data fetching hooks with Supabase realtime sync
├── lib/ # Notification scheduler, date utilities, Supabase client
├── types/ # TypeScript type declarations
├── PRD.md # Product Requirements Document
├── ARCHITECTURE.md # System Architecture & Sequence Diagrams
└── README.md # Project documentation
Distributed under the MIT License. See LICENSE for details.