How crypto2468/orbit works
Orbit is a full-stack habit tracker: users register, create habits, record completions, and review progress; AI features use habit and log data to produce coaching, recovery plans, and reports. The graph follows the sampled React routing/authentication and backend controller/service code. Several feature pages and route modules are represented from their tree paths and documented capabilities, but their detailed wiring was not sampled, so uncertain links are omitted.
Main entry points: App.jsx App routes · server.js API server · aiController.js Coaching context · habitController.js Habit operations
Components 27
Habit-tracking interface
- App routes
frontend/app/src/App.jsx - HTTP client
frontend/app/src/api/axios.js - Dashboard
frontend/app/src/pages/Dashboard.jsx - Habit manager
frontend/app/src/pages/Habits.jsx - Weekly view
frontend/app/src/pages/Weekly.jsx - Insights view
frontend/app/src/pages/Insights.jsx - Statistics
frontend/app/src/pages/Stats.jsx
Account access
- Auth state
frontend/app/src/context/AuthContext.jsx - Auth endpoints
backend/routes/auth.js - Account operations
backend/controllers/authController.js - Request protection
backend/middleware/auth.js
Habit and progress
- Habit endpoints
backend/routes/habits.js - Habit operations
backend/controllers/habitController.js - Completion endpoints
backend/routes/logs.js - Completion and stats
backend/controllers/logController.js
AI coaching
- Coaching endpoints
backend/routes/ai.js - Coaching context
backend/controllers/aiController.js - AI service
backend/utils/aiService.js
Persistence
- Habit records
backend/models/Habit.js - Completion records
backend/models/HabitLog.js - User records
backend/models/User.js - Coaching records
backend/models/AIinsight.js - API server
backend/server.js - Database connector
backend/config/db.js
Other components
- User
- MongoDB
- Gemini API
Connections 28
- User → App routes: uses
- App routes → Dashboard: routes
- App routes → Habit manager: routes
- App routes → Weekly view: routes
- App routes → Insights view: routes
- App routes → Statistics: routes
- Auth state → HTTP client: requests
- Auth endpoints → Account operations: dispatches
- Auth endpoints → Request protection: protects
- Account operations → User records: reads/writes
- API server → Auth endpoints: mounts
- API server → Habit endpoints: mounts
- API server → Completion endpoints: mounts
- API server → Coaching endpoints: mounts
- API server → Database connector: connects
- Database connector → MongoDB: connects
- Habit endpoints → Habit operations: dispatches
- Habit operations → Habit records: reads/writes
- Habit operations → Completion records: deletes
- Completion endpoints → Completion and stats: dispatches
- Completion and stats → Habit records: reads
- Completion and stats → Completion records: reads/writes
- Coaching endpoints → Coaching context: dispatches
- Coaching context → Habit records: reads
- Coaching context → Completion records: reads
- Coaching context → AI service: requests completions
- Coaching context → Coaching records: writes insights
- AI service → Gemini API: generates content