Inspiration
Planning four years of college at Berea is hard. Between GEM requirements (Ways of Knowing, Richnesses, Learning & Inquiry sequences), major prerequisites, the 4-credit-per-semester structure, and career goals, it is easy to feel overwhelmed before you even start. I wanted a tool that takes a student's major, interests, and career goals and instantly produces a complete, rule-following 4-year plan with career guidance built in.
What it does
Lumen is an AI-powered academic planner built for Berea College students. In four steps, a student enters their major(s), academic interests, hobbies, and career goals. Lumen then:
- Generates a full 8-semester course plan by scheduling major requirements, GEM categories (Ways of Knowing, Richnesses, the L&I 100 to 400 sequence), and electives while respecting every prerequisite.
- Provides AI career advice powered by Claude, including which courses to prioritize, skills to build, specific companies to target, how to find Berea alumni on LinkedIn, and concrete ways to gain experience outside class.
How we built it
The planning engine is a constraint-based scheduler written in TypeScript. It enforces Berea-specific rules: exactly 4 credits per semester, no more than 2 major courses per semester, prerequisite ordering across all 8 semesters, L&I courses gated by class year, and core major courses placed in the first two years. Majors supported include CSC, BIO, PSY, and AFR, drawn from real department schedules.
The UI is a multi-step form built with Next.js and shadcn/ui. After the plan is generated, an API route calls Claude via the Vercel AI SDK to produce personalized career advice organized into clear sections.
Challenges we ran into
The hardest part was the scheduling algorithm. Satisfying all constraints at once, including prerequisite chains, GEM coverage, credit limits, major course caps, and L&I sequencing, required careful ordering of placement passes and fallback placeholder logic. Getting the output to feel intentional rather than just technically valid took many iterations.
The AI integration also required encoding Berea-specific context directly into the prompt, such as the labor program, the GEM framework, and the alumni network, to produce useful advice instead of generic responses.
Accomplishments that we're proud of
The scheduler reliably produces valid 4-year plans across multiple major combinations without manual tuning. The career advice feels specific to Berea students rather than generic, because the prompt is built around Berea's actual culture and programs. The full flow from onboarding to a complete plan with career guidance takes under a minute.
What we learned
- Constraint scheduling is harder than it looks. The order you resolve constraints matters as much as the constraints themselves.
- Prompting for structured, school-specific advice requires encoding institutional context directly into the system prompt.
- Next.js App Router combined with shadcn/ui is a fast way to build polished, data-driven UIs.
What's next for Lumen
- Support for more majors and double-major combinations
- Let students swap individual courses and see the plan update live
- Export the plan as a PDF or share it with an advisor
- Pull live course availability from Berea's registration system so plans reflect what is actually offered each semester
Built With
- anthropic-claude-sonnet-4
- next.js
- react
- shadcn/ui
- tailwind-css
- typescript
- v0
- vercel-ai-sdk
Log in or sign up for Devpost to join the conversation.