Campus4Life: GEXP Exchange Mapper
A smarter way for SUTD CSD students to plan Term 6 exchanges.
Inspiration
At SUTD, academic planning is both structured and overwhelming.
Students must navigate:
- Specialization track requirements
- Term-based module availability (Fall/Spring)
- Exchange mapping constraints
- Prerequisites and credit limits
Yet the tools available are fragmented — spreadsheets, PDFs, word-of-mouth advice from seniors, and manual comparisons across university websites.
We observed students spending hours trying to answer simple but high-stakes questions:
- “Will I clear my track if I go on exchange in Spring?”
- “Which university maximizes my AI module coverage?”
- “What modules should I prioritize this term?”
Campus4Life was inspired by this gap. We wanted to transform academic planning from a manual guessing process into a structured, intelligent decision-support system.
What it does
Campus4Life is a web application that helps SUTD students plan their academic pathway and exchange strategically.
It provides:
- Track-based filtering (AI, Security, IoT, etc.)
- Fall/Spring-aware recommendations
- Must-map module enforcement
- Viability scoring and ranking
- No-track mode for undecided students
Instead of browsing universities and modules reactively, students receive ranked recommendations based on how well each option satisfies their academic goals.
We model viability as:
$$ \text{Score}(u) = |R \cap M_u^{(P)}| $$ Where:
- \( R \) = required modules for a track
- \( M_u^{(P)} \) = modules offered by university \( u \) in period \( P \)
A higher score indicates better alignment with the student’s specialization.
How we built it
We designed Campus4Life with a clean, scalable architecture.
Backend (Flask API)
- Handles recommendation logic
- Filters by track and exchange period
- Enforces must-map constraints
- Computes viability scores
- Exposes structured JSON endpoints
Frontend (Flutter Web)
- Interactive UI for track and period selection
- Dynamic ranking display
- Clean filtering interface
- Deployable static build
CI/CD
- Automated backend testing using
pytest - GitHub Actions for continuous integration
- Automatic frontend deployment to GitHub Pages
This separation of concerns ensures scalability, maintainability, and future extensibility.
Challenges we ran into
1. Data Normalization
Different universities structure module names and descriptions inconsistently.
We created standardized schemas and structured mappings to ensure reliable comparisons.
2. Combinatorial Growth
Matching universities, modules, tracks, and periods increases complexity:
$$ O(|U| \cdot |M|) $$
We optimized performance through early filtering and constraint pruning before scoring.
3. Balancing Power with Simplicity
Too many filters overwhelm users. Too few reduce usefulness.
We iterated toward a minimal yet powerful filtering model.
4. Frontend–Backend Coordination
Ensuring stable API contracts and predictable JSON structures required careful interface design.
Accomplishments that we're proud of
- Successfully reframed exchange planning as a constraint optimization problem
- Built a working split-stack architecture (Flask + Flutter Web)
- Implemented a scoring-based recommendation engine
- Designed a system that is immediately useful for SUTD students
- Established automated testing and CI/CD deployment workflows
- Delivered a scalable foundation rather than a one-off prototype
Most importantly, we transformed a confusing planning process into something structured and measurable.
What we learned
- Academic planning problems are computational in nature
- Students think in goals; systems operate on constraints
- Clean architecture matters even in hackathon builds
- Optimization logic is only valuable if paired with intuitive UX
- Clear problem framing is more important than adding features
We learned that solving real student pain points requires both technical rigor and empathy.
What's next for Campus4Life
We envision expanding Campus4Life into a full academic decision-support platform.
Next steps include:
- Supporting multi-track optimization
- Integration with official academic APIs
- Expansion beyond CSD to other SUTD pillars
- AI-assisted personalized recommendations
- Hosting a production backend for public access
- Real-time exchange slot tracking
- Long-term pathway simulation across multiple terms
Our long-term vision is simple:
Campus4Life becomes the default planning tool for SUTD students — empowering them to design their academic journey with clarity and confidence.
Log in or sign up for Devpost to join the conversation.