Inspiration

Many freshmen enter university excited about campus life but quickly become overwhelmed by the constant flow of assignments, club meetings, and campus events. Without the structured schedules they had in high school, it’s easy to fall behind academically or miss opportunities to get involved. Mandala helps students balance both. By analyzing their class schedule, interests, and study needs, Mandala intelligently recommends campus events and organizes their time so they can stay productive without missing out on campus life.

What it does

*Lets students upload their class schedule and automatically parses it into a usable calendar.

*Discovers campus events and matches them to students by interests and availability.

*Generates personalized weekly plans with classes, study blocks, and events. Then creates a calendar view to help users visualize them clearly.

*Exports events and schedules to common calendar formats such as Google Calendar so students can seamlessly integrate it into their lives.

How we built it

Mandala is built using a modern TypeScript + React stack with Vite for fast development and TailwindCSS for responsive UI. The frontend includes components for schedule upload, event discovery, and a weekly planning calendar that helps students visualize their commitments. We used Lovable and Claude to rapidly scaffold the application, then extended it with custom logic and integrations. The backend relies on serverless edge functions to handle schedule parsing, event discovery from campus sources, and topic inference to match students with relevant events. The system is designed to automatically organize a student’s week and export plans directly to Google Calendar.

Challenges we ran into

*Data Collection: We experimented with a lot of different approaches to see how we would gather event data in a reasonable amount of time.

*Schedule parsing: academic schedules come in many formats and edge cases (overlapping sections, ambiguous times).

*Event discovery: AI hallucinations plagued our initial versions.

*UX tradeoffs: balancing signal (interesting events) against noise (too many suggestions).

Accomplishments that we're proud of

*Creating an elegant, mobile-friendly UI that makes discovering and saving events frictionless.

*Learning about how to effectively work with AI to iterate quicker.

*Export features that let students move from discovery to action in one click.

*Above all, working together and creating something we all would use! None of us knew each other; so being able to create something so quickly whilst also learning how to work together respectfully and efficiently is something we are all proud of

What we learned

*Small, well-scoped machine inference (topic tagging + availability matching) significantly improves relevance without heavy ML infrastructure.

*UX matters more than signals: the right micro-interactions (one-click save, conflict warnings) dramatically increase adoption.

*Building for real campus data surfaces many corner cases: continuous testing with real schedules is essential.

*How to effectively work with Github in a team: creating separate branches and merging, setting remotes to point at different folders, using git reset when needed,

What's next for Mandala

*Improve recommendations using feedback loops and lightweight personalization based on student behavior and preferences.

*Add calendar integrations with Google Calendar, Outlook, and iCal so schedules sync automatically.

*Enable account creation with Google authentication for persistent schedules and preferences.

*Expand event discovery by integrating campus club feeds and official university calendars.

*Collect engagement data to analyze how students interact with events and optimize recommendations.

*Scale to other universities by adapting Mandala to different campus event systems and student needs.

*Set aside more or less study time for certain classes based on their rated difficulty from Atlas.

Built With

Share this project:

Updates