How ganeshreddy-nxtwave/academic-intelligence- works
AIP is a Streamlit academic-data intelligence product: users explore linked university, planning, delivery, content, feedback, and instructor data, or ask questions answered by an SQL-generating chat agent. Canonical domain tables are assembled into DuckDB tables and join-ready views; the app also exposes GRIT readiness analytics and a data-pipeline overview, with an MCP server as another database-backed interface. The excerpts establish the app routing, agent safeguards, and parts of the data/UI wiring; other domain relationships below rely on README documentation.
Main entry points: app.py Page router · canonical Canonical tables · load_duckdb.py Store builder · chat.py Chat page
Components 21
Dashboard experience
- Page router
app.py - Shared dashboard
aip/dashboard.py - Chat page
views/chat.py - Knowledge explorer
views/knowledge_base.py - GRIT analytics
views/grit.py - Pipeline overview
views/pipeline.py
Query and storage
- SQL chat agent
aip/agent.py - Read-only SQL
aip/db.py - DuckDB store
- Store builder
scripts/load_duckdb.py
Academic data
- Canonical tables
data/canonical - Join-ready views
scripts/load_duckdb.py - Academic planning
data/canonical/planning - Session delivery
data/canonical/delivery - Subjects and content
data/canonical/content - Feedback and instructors
data/canonical/feedback - GRIT attempts
data/canonical/grit
Interfaces
- OpenRouter API
- MCP server
mcp_server.py - Answer export
aip/export.py
Other components
- Academic user
Connections 24
- Academic user → Page router: opens app
README.md - Page router → Shared dashboard: checks login
app.py - Page router → Chat page: routes to
app.py - Page router → Knowledge explorer: routes to
app.py - Page router → GRIT analytics: routes to
app.py - Page router → Pipeline overview: routes to
app.py - Chat page → SQL chat agent: asks questions
views/chat.py - SQL chat agent → Read-only SQL: runs SQL
aip/agent.py - Read-only SQL → DuckDB store: queries read-only
aip/db.py - SQL chat agent → OpenRouter API: calls model
README.md - Chat page → Answer export: exports answers
views/chat.py - Shared dashboard → Store builder: builds store
aip/dashboard.py - Store builder → Canonical tables: loads tables
README.md - Store builder → DuckDB store: assembles
README.md - Store builder → Join-ready views: creates views
scripts/load_duckdb.py - Knowledge explorer → Join-ready views: explores joins
views/knowledge_base.py - GRIT analytics → Join-ready views: reads analytics
views/grit.py - Pipeline overview → Shared dashboard: gets counts
views/pipeline.py - Canonical tables → Academic planning: includes plans
README.md - Canonical tables → Session delivery: includes sessions
README.md - Canonical tables → Subjects and content: includes taxonomy
README.md - Canonical tables → Feedback and instructors: includes feedback
README.md - Canonical tables → GRIT attempts: includes attempts
README.md - MCP server → Read-only SQL: queries through
mcp_server.py