How abinaya2006/nagare works
Nagare is an AI-assisted, energy-aware productivity app. Users onboard and set preferences, capture and manage tasks, generate or adjust a daily schedule, then track work through the dashboard, focus timer, and Constellation World. NANI offers a separate natural-language interaction path. The backend exposes authenticated task, schedule, preference, and ORDA APIs backed by repositories and Supabase; a Python AI module provides schedule generation and ORDA intent processing. README capabilities fill out feature branches beyond the sampled source; several frontend-to-backend wiring details are therefore left implicit.
Main entry points: main.py FastAPI routers · TaskContext.tsx Task context · api.ts API client · page.tsx Preferences
Components 23
Product experience
- Onboarding
frontend/app/onboarding/page.tsx - Preferences
frontend/app/settings/page.tsx - Dashboard
frontend/app/dashboard/page.tsx - Task management
frontend/app/tasks/page.tsx - Flow schedule
frontend/app/schedule/page.tsx - Constellation World
frontend/app/world/page.tsx - Task context
frontend/contexts/TaskContext.tsx - Schedule context
frontend/contexts/ScheduleContext.tsx - API client
frontend/services/api.ts - Offline queue
frontend/services/offlineQueue.ts - NANI message route
frontend/app/api/v1/NANI/process/route.ts
Application backend
- FastAPI routers
backend/app/main.py - Task endpoints
backend/app/api/tasks.py - Task service
backend/app/services/tasks.py - Task repository
backend/app/repositories/tasks.py - Schedule endpoints
backend/app/api/schedules.py - Preference services
backend/app/services/preferences.py - ORDA service
backend/app/services/orda.py
AI services
- AI API
ai/main.py - Schedule generation
ai/services/schedule_service.py
External services
- Supabase
- Gemini
Other components
- User
Connections 23
- User → Onboarding: sets up
- User → Task management: manages tasks
- User → Flow schedule: plans day
- User → Dashboard: tracks focus
- User → Constellation World: explores goals
- User → Preferences: sets preferences
- Task management → Task context: uses state
- Dashboard → Task context: uses state
- Flow schedule → Schedule context: uses state
- Task context → API client: requests tasks
- Schedule context → API client: requests schedules
- Task context → Offline queue: queues offline
- API client → FastAPI routers: calls API
- NANI message route → User: returns reply
- FastAPI routers → Task endpoints: dispatches
- FastAPI routers → Schedule endpoints: dispatches
- Task endpoints → Task service: calls
- Task service → Task repository: reads/writes
- Task repository → Supabase: persists tasks
- Preferences → API client: requests preferences
- FastAPI routers → ORDA service: dispatches
- AI API → Schedule generation: dispatches
- Schedule generation → Gemini: generates schedule