Projects

CPEN 221 Group Project

StudentLife Course Explorer

A Java course-exploration app for searching UBC courses and collecting workload, difficulty, pace, instructor, and review data.

Java
Course tooling
Team project
UX
Live: Local buildCode
StudentLife Course Explorer preview

Employer signal

What This Project Shows

This project is useful to employers because it shows team software construction: data models, controllers, JSON persistence, endpoints, validation, and project planning across multiple contributors.

Problem

What Needed To Be Solved

Students often plan terms from scattered informal advice. The application tries to turn that subjective experience into structured information without pretending it is perfectly objective.

Approach

How I Built The Solution

The group used a model-controller structure around courses and reviews. Course search delegates to the course model, course details aggregate course and review data, and review submission validates user input before storage.

Outcome

What It Demonstrates

The project reads as a real team deliverable: scoped features, shared architecture, structured data, and a user-facing decision-support problem.

Evidence From Source

Source signal

The inspected repo includes `CourseModel.search(q, filter)`, Spark routes for `/search`, `/course/:code`, and `/review/:code`, plus JSON course/review resources.

Team signal

The project plan listed CourseModel data load/store as my responsibility and connected it to controller integration and testing.