Campus Explorer

Which Lectures and Free Rooms are nearby?

 

With this question in mind, we built a unique Android app, focussing on an easy and accessible way to get location aware information.

 

In the app, the user can search any buildings around them for running courses as well as free rooms.

 

To get this information, we crawled the course catalog for all running courses and matched this information with the building data from the LMU Raumfinder app.

 

The frame for this project was a lab course on location aware apps with the chair of mobile and distributed systems.

Two screens: image it shows a map with buildings marked by pins, right it shows a building plan with rooms marked by pins.

The explore and find stages.

The icons for our tech stack: Spring, REST, mongoDB, Jaunt, Kotlin.

Our tech stack.

Tech Stack

 

The project includes a backend written in Java Spring and accesses a Mongo Database with the crawled data we gained via the crawling library Jaunt from the course catalog. Frontend-wise, we used Kotlin for Android, connecting to the backend via a Rest API interface.

 

All of our code can be found on Github and is available under the MIT License: The backend on campusExplorerServer and the frontend on campusExplorerClient.

 

Using server-side filtering, the client only receives the data it needs and can then efficiently and locally apply their filtering, e.g. what type of courses and faculties they are interested in. Additionally, the app caches all room plans to save time when revisiting a building.

App Workflow

 

When the user first opens up the app, they are presented with a quick intro into the main features of the app: explore, find and filter.

 

In the explore stage, the user can explore the area around them and find university buildings. After selecting one of the buildings, the user finds a floor plan on which they can find all the lectures or free rooms.

 

Here, they can filter the time by adjusting a slider and receive more information about a specific room by selecting the marker on the room plan.

Three intro screens describing the explore, find, filter model.

The intro: explore, find, filter.