How lycan-xx/studywise-ai works
StudyWise AI turns user-provided material into courses and practice tests, then returns graded results, AI insights, and learning analytics. The main flow runs from the authenticated client through API routes to course/test controllers, AI generation, and Supabase storage; result and analytics endpoints expose the saved outcomes. The README also describes multi-provider failover, source-linked questions, preferences, and progress tracking. Some client-to-API and unsampled feature wiring is documented only at a high level, so those links are marked unverified or omitted.
Main entry points: App.tsx App routing · routes.ts API routing · apiService.ts API client · AIService.ts AI provider engine
Components 18
Study client
- App routing
client/src/App.tsx - Course study
client/src/components/course/ModuleContent.tsx - Course creation
client/src/pages/dashboard.tsx - Test taking
client/src/pages/module-test.tsx - Results views
client/src/pages/test-summary.tsx - API client
client/src/services/apiService.ts - Document processing
client/src/utils/documentProcessor.ts - Authentication
client/src/contexts/AuthContext.tsx
Learning API
- API routing
server/routes.ts - Course generation
server/controllers/CourseController.ts - Module tests
server/controllers/ModuleTestController.ts - Test operations
server/controllers/TestController.ts - Results analytics
server/controllers/ResultsController.ts
AI generation
- AI provider engine
server/services/AIService.ts
Persistence and insights
- Supabase access
server/lib/supabase.ts - Supabase database
Other components
- Learner
- AI providers
Connections 24
- Learner → App routing: uses
client/src/App.tsx - App routing → Course study: routes to
client/src/App.tsx - App routing → Course creation: routes to
client/src/App.tsx - App routing → Test taking: routes to
client/src/App.tsx - App routing → Results views: routes to
client/src/App.tsx - App routing → Authentication: provides
client/src/App.tsx - Course creation → Document processing: processes material
- Course creation → API client: requests generation
- Course study → API client: requests course data
- Test taking → API client: submits answers
- Results views → API client: requests results
- API client → API routing: calls API
- API routing → Course generation: dispatches
server/routes.ts - API routing → Module tests: dispatches
server/routes.ts - API routing → Test operations: dispatches
server/routes.ts - API routing → Results analytics: dispatches
server/routes.ts - Course generation → AI provider engine: generates course content
server/controllers/CourseController.ts - Course generation → Supabase access: stores course
server/controllers/CourseController.ts - Module tests → AI provider engine: generates questions
server/controllers/ModuleTestController.ts - Module tests → Supabase access: reads and writes tests
server/controllers/ModuleTestController.ts - Test operations → AI provider engine: generates questions
server/controllers/TestController.ts - Results analytics → Supabase access: reads performance
server/controllers/ResultsController.ts - AI provider engine → AI providers: sends prompts
- Supabase access → Supabase database: queries and persists
server/lib/supabase.ts