Tum Campus App - An Unofficial Guide Through University Life
The TUM Campus App (TCA) is an open source project, developed by volunteers. This repository is dedicated to the development and transition to Flutter and currently in Beta.
The application mostly targets phones, but can also be used on tablets, Macs and in your browser. We currently support iOS, iPadOS, macOS and Android.
Features
- Calendar Access
- Lecture Details
- Grades
- Tuition Fees Information
- Study Room Availability
- Cafeteria Menus
- Room Maps
- Universal Search: Room
- TUM.sexy Redirects
Beta
If you want to participate in the beta of this app, enter your details here to get invited via TestFlight or here to get invited via the Google Play Beta Program. You can also test the preliminary web app. We would appreciate your feedback regarding bugs and improvement suggestions!
Policies
Support
You can reach us on Discord, GitHub or via E-Mail app@tum.de
Development
To develop this project, you need these dependency's installed. If you have any problems with any of the steps below, please open an issue. Please refer to the respective installation instructions:
Dependency | Usage | where to download it |
---|---|---|
Flutter (includes the Dart compiler) |
SDK to develop this app | https://docs.flutter.dev/get-started/install |
.proto
files of the
Updating the To update the generated stubs for the Campus, you need protoc installed, then activte it in dart and then you can generate the new client
dart pub global activate protoc_plugin
export PATH="$PATH:$HOME/.pub-cache/bin"
curl -o protos/tumdev/campus_backend.proto https://raw.githubusercontent.com/TUM-Dev/Campus-Backend/main/server/api/tumdev/campus_backend.proto
protoc --dart_out=grpc:lib/base/networking/apis -I./protos google/protobuf/timestamp.proto google/protobuf/empty.proto protos/tumdev/campus_backend.proto
Current needed Forks
To ensure that Campus-Flutter runs on every supported platform, we need to make some modifications to packages.
Package | Reason | Link |
---|---|---|
gRPC | Caching | https://github.com/jakobkoerber/grpc-dart |
Google Maps Flutter iOS | Enable usage of SDK in ARM iOS Simulators | https://github.com/jakobkoerber/packages |
Xml2Json | Fix Parsing of XML to JSON | https://github.com/jakobkoerber/xml2json |