Why I built it

A list of deadlines does not tell a student what fits into Tuesday evening. StudyPilot turns coursework, effort estimates and available study windows into a weekly plan, with conflicts visible before anything reaches the calendar.

What it does

Enter coursework and study windows, or load the labeled example. StudyPilot preserves source references and leaves ambiguous deadlines unresolved until the student confirms them. It proposes sessions, shows the workload and waits for approval. The approved plan becomes calendar events that can be downloaded as an ICS file. A missed session can be moved when another slot fits before its deadline.

How it works

The React workspace calls a same-origin FastAPI application hosted on AWS EC2. Its IAM role invokes an Amazon Bedrock AgentCore runtime. Inside that runtime, a Strands agent uses read-only inspect_syllabus and inspect_availability tools, then returns typed PlanningAdvice using Groq GPT-OSS 20B. AWS Secrets Manager holds the server-side provider credential.

The application validates the advice and runs the scheduler. Model advice can influence task order; it cannot approve a plan or write calendar events. The exact approval gate, schedule validation and SQLite persistence remain application-owned.

What I verified

The hosted recording creates eight study sessions, reviews the proposal, approves it and downloads the calendar. Tests also cover protected time, unresolved dates, duplicate task titles, saved-plan revisions and rejection of impossible schedules. Browser-session isolation was checked separately.

Tradeoffs and next steps

The hosted app requires no visitor account or API key, but has bounded AI allowances. Records belong to a browser session stored on the server; clearing its cookie loses access. Use fictional or non-sensitive data. Calendar export is an ICS download, not a Google or Outlook integration. The scheduler uses a bounded strategy, not globally optimal packing.

I built this as a solo entrant with Codex for implementation, tests and documentation. The video uses synthetic Deepgram narration. The repository includes Apache-2.0 licensing, locked dependencies, tests, an architecture diagram and a clearly labeled scripted local mode. The deployed model path is AgentCore, Strands and Groq; it does not depend on Bedrock foundation-model inference access.

September 13 update

The hosted planner now checks cumulative effort against time available before each deadline, excluding protected commitments. It shows a deficit before requesting model advice. A fresh hosted planning and approval check passed on September 12.

New AWS Builder article: deadline checks, privacy previews, and reviewable patches.

Built With

Share this project:

Updates

Submission history