Academic GPS is a hackathon MVP for academic and career discovery. A student describes interests in plain language, and the product returns graph-driven recommendations for professors, labs, alumni, courses, events, and next actions. It also renders a visual pathway map and turns the recommendations into a calendar-aware weekly plan.
- Turn vague academic curiosity into a clear pathway in seconds.
- Combine recommendations, graph visualization, and scheduling in one demo flow.
- Move beyond search by suggesting the next best action, not just the next person.
- Stay demoable without AWS or Google credentials through a strong local fallback mode.
academic_gps/
backend/
app/
api/
core/
services/
data/
output/
frontend/
src/
cli/
Flow:
- FastAPI accepts student interests, skills, and goals.
- The recommendation engine ranks seed data using deterministic scoring.
- Bedrock hooks provide intent parsing, match explanations, and summary narration.
- The pathway engine creates an academic-to-career progression.
- The graph builder exports an interactive pathway map.
- The scheduler finds free windows from Google Calendar or demo calendar data.
- React renders the landing page, dashboard, pathway map, and weekly planner.
- Amazon Bedrock in bedrock_client.py
- Amazon OpenSearch Service in opensearch_client.py
- Amazon Neptune in neptune_client.py
- Amazon S3 in s3_client.py
The current implementation defaults to local demo mode and enables AWS only through environment flags.
- The planner asks for a weekly plan after recommendations are generated.
- If Google OAuth is configured, the backend can read busy windows and create confirmed events.
- If it is not configured, Academic GPS falls back to sample_calendar.json.
- The scheduler prioritizes short high-impact actions and fits them into free slots.
cd academic_gps/backend
python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt
uvicorn app.main:app --reload --port 8000cd academic_gps/frontend
npm install
npm run devpython main.py demoUse .env.example as the starting point.
Important variables:
AWS_REGIONENABLE_BEDROCKBEDROCK_MODEL_IDENABLE_OPENSEARCHOPENSEARCH_ENDPOINTENABLE_NEPTUNENEPTUNE_ENDPOINTENABLE_S3S3_BUCKETGOOGLE_CLIENT_IDGOOGLE_CLIENT_SECRETGOOGLE_REDIRECT_URI
python academic_gps/cli/app.py ingest-data
python academic_gps/cli/app.py discover --interest "quantum computing and photonics" --goal "research career"
python academic_gps/cli/app.py map --interest "quantum computing and photonics"
python academic_gps/cli/app.py explain --interest "AI for healthcare"
python academic_gps/cli/app.py plan --interest "robotics" --goal "industry" --calendar-summary academic_gps/backend/app/data/sample_calendar.json
python academic_gps/cli/app.py demoGET /api/healthGET /api/demoPOST /api/discoverPOST /api/mapPOST /api/planner/suggestPOST /api/planner/create-eventGET /api/auth/google/status
- Open the web app.
- Click
Load Demo Mode. - Show grouped recommendations and the narrated pathway.
- Open the graph view and highlight the pathway from interest to alumni outcome.
- Click
Generate Weekly Planto show calendar-aware scheduling.
- Demo calendar: sample_calendar.json
- Seed dataset: seed_data.json
- Visual map export: academic_gps_pathway_map.html