How shivansh19200/jassi works
JASSI takes a student's goal and calendar constraints, checks whether the goal is feasible, builds and verifies a resource-backed schedule, and supports check-ins that update mastery or trigger replanning. The dashboard is the main entry point; LangGraph coordinates LLM and deterministic stages. The README documents image/manual/Calendar imports and replanning; sampled excerpts confirm the core tools and integrations, but not every UI-to-workflow call, so uncertain wiring is omitted.
Main entry points: streamlit_app.py Streamlit dashboard · graph.py Planning workflow · tool_nodes.py Tool orchestration · constraint_parser.py Constraint imports
Components 16
Student interaction
- Streamlit dashboard
app/streamlit_app.py - Constraint imports
app/tools/constraint_parser.py
Agent workflow
- Planning workflow
app/graph.py - Check-in workflow
app/graph.py - LLM operations
app/nodes/llm_nodes.py - Tool orchestration
app/nodes/tool_nodes.py
Planning engine
- Feasibility analysis
app/tools/feasibility.py - Schedule placement
app/tools/scheduler.py - Plan verification
app/tools/verifier.py
Knowledge and services
- Resource retrieval
app/vectorstore/resource_retriever.py - Topic catalog
data/topics.json - Resource catalog
data/resources.json - Seed student state
data/demo_student.json
Other components
- Student
- Groq API
- Google Calendar events
Connections 21
- Student → Streamlit dashboard: sets goal
- Streamlit dashboard → Planning workflow: submits request
- Streamlit dashboard → Check-in workflow: submits check-in
- Streamlit dashboard → Constraint imports: imports events
- Google Calendar events → Constraint imports: provides events
- Constraint imports → Streamlit dashboard: returns constraints
- Planning workflow → LLM operations: parses and explains
- Planning workflow → Tool orchestration: runs deterministic steps
- Planning workflow → Resource retrieval: requests resources
- Check-in workflow → LLM operations: parses and explains
- Check-in workflow → Tool orchestration: updates and replans
- LLM operations → Groq API: sends prompts
- Tool orchestration → Feasibility analysis: calculates capacity
- Tool orchestration → Schedule placement: places sessions
- Tool orchestration → Plan verification: checks plan
- Feasibility analysis → Topic catalog: loads topic estimates
- Plan verification → Topic catalog: reads prerequisites
- Resource retrieval → Resource catalog: indexes resources
- Planning workflow → Topic catalog: loads topic catalog
- Seed student state → Streamlit dashboard: seeds demo state
- Streamlit dashboard → Student: shows plan and progress