How lc-1220/pathfinder works
PathFinder is a student-profile and academic-program guidance web app. Students sign in or use a guest session, submit report cards, review extracted academic details, and receive course recommendations; the app also provides course chat and administrative/student-management pages. The main runtime is concentrated in fasthtml_app.py, with browser behavior in static/StudentApp.js and OCR modules in ocr/. The README documents Supabase Postgres and Docling use. Source excerpts do not show all route handlers or database operations, so uncertain internal links are omitted or marked unverified.
Main entry points: fasthtml_app.py Web app and routes · StudentApp.js Student workspace · Login.js Login UI · docling_service.py Docling conversion
Components 16
Web experience
- Browser pages
templates - Login UI
static/Login.js - Student workspace
static/StudentApp.js
Application
- Web app and routes
fasthtml_app.py - Authentication
fasthtml_app.py - Student profiles
fasthtml_app.py - Course recommendations
fasthtml_app.py - Course chat
fasthtml_app.py
Report-card OCR
- Docling conversion
ocr/docling_service.py - Report-card parsing
ocr/parser.py - Image preprocessing
ocr/preprocessing.py - Table extraction
ocr/table_extraction.py
Persistence
- Supabase Postgres
supabase_schema.sql
Other components
- Student
- Administrator
- Supabase service
Connections 14
- Student → Login UI: signs in
static/Login.js - Login UI → Authentication: submits credentials
static/Login.js - Student → Student workspace: uses workspace
static/StudentApp.js - Administrator → Browser pages: uses admin pages
- Student workspace → Course chat: sends chat request
static/StudentApp.js - Web app and routes → Authentication: handles sign-in
fasthtml_app.py - Web app and routes → Student profiles: serves profile routes
fasthtml_app.py - Web app and routes → Course recommendations: computes guidance
fasthtml_app.py - Web app and routes → Course chat: handles chat
fasthtml_app.py - Web app and routes → Docling conversion: uses OCR provider
README.md - Web app and routes → Report-card parsing: imports parser
fasthtml_app.py - Student workspace → Docling conversion: uploads report cards
- Web app and routes → Supabase Postgres: uses configured database
README.md - Supabase service → Supabase Postgres: hosts database
README.md