How chinoarror/uni-study works
Uni Study is a university study dashboard for managing schedules, courses, grades and GPA, with image/CSV import and review, settings, and a public landing page. The main user journey is to sign in, view or maintain study data, optionally import a file for recognition and confirmation, then review grades and GPA analytics. The tree has a single React entry point and a single Worker entry point; the README is empty and sampled source is partial, so internal screen wiring and some backend dispatch details are not expanded.
Main entry points: main.tsx Study app · index.ts Import handler · 0001_initial.sql Database schema · 0003_app_sessions.sql Session schema
Components 20
Study dashboard
- Study app
src/main.tsx - Landing page
src/main.tsx - Schedule
src/main.tsx - Courses
src/main.tsx - Grade records
src/main.tsx - GPA analytics
src/main.tsx - Import review
src/main.tsx - Settings
src/main.tsx
Worker services
- API and auth
worker/index.ts
Import workflow
- Import handler
worker/index.ts - Recognition worker
worker/index.ts - Draft confirmation
worker/index.ts - Import queue
Persistence
- D1 database
- R2 files
- Database schema
migrations/0001_initial.sql - Session schema
migrations/0003_app_sessions.sql
Other components
- Student
- Auth center
- AI service
Connections 22
- Student → Study app: uses
- Student → Landing page: visits
- Study app → Schedule: shows
- Study app → Courses: shows
- Study app → Grade records: shows
- Study app → GPA analytics: shows
- Study app → Import review: shows
- Study app → Settings: shows
- Study app → API and auth: API requests
- API and auth → Auth center: verifies identity
- API and auth → D1 database: reads and writes
- Import handler → D1 database: records job
- Import handler → R2 files: stores original
- Import handler → Import queue: enqueues image
- Import queue → Recognition worker: dispatches job
- Recognition worker → AI service: recognizes content
- Recognition worker → D1 database: stores draft
- Import review → Draft confirmation: confirms draft
- Draft confirmation → D1 database: imports records
- Draft confirmation → R2 files: deletes original
- D1 database → Database schema: uses schema
- D1 database → Session schema: uses schema