Skip to content

This Android app shows dish menus for CTU cafeterias from agata.suz.cvut.cz web in much more pleasant and usable way for phones. It shows today and week menu, account balance, opening hours, contacts, announcements and address for all the canteens.

License

Notifications You must be signed in to change notification settings

Lastaapps/menza

Repository files navigation

CTU Menza

GitHub release (latest by date)F-Droid

This Android app shows dish menus for CTU cafeterias from the agata.suz.cvut.cz and studentcatering.cz websites in a much more pleasant and usable way for phones. It shows today's and this week's menu, opening hours, contacts, announcements and addresses for all canteens.

What does 'Menza' mean?

Menza is the Czech word for school cafeteria.

Now on Google PlayGet it on F-Droid

Related projects

Features

  • Today's menu + dish details
  • Account balance along with low balance warning, see tutorial for setup instructions.
  • This week's menu
  • Menza opening hours, contacts, announcements and addresses

User experience

  • Dark theme
  • Many themes along with support for Android 12 Material You dynamic theming
  • Image caching
  • Images download switch on metered networks (~0.7 MB per image)
  • No private data collection
  • Proper landscape mode and large screen device support

Code, Libraries

Core parts are written in Kotlin Multiplatform, UI is written using Jetpack Compose (Android).

  • AndroidX (Compose, ...)
  • ArrowKt
  • Decompose
  • SQLDelight
  • Koin
  • Coil-kt
  • Ktor
  • Ktlint
  • And more

Screenshots

today dish menutoday dish menu darkdish detaildish detail dark

week dish menu darkweek dish menuinfo page darkinfo page

Contributing and project structure

In case you want to help or implement your own feature, please see CONTRIBUTING.md first. I think this is a great project to lear how does a simple yet corporate-like app look like, how code should (should not?) be structured and how functional approaches can be nicely used in an "imperative" language.

Data sources

Most of the data is obtained from the official Agata API, see the documentation here. To get your API key, please contact the IT center and don't steal mine, they will be more than happy to give you one.

To get FS and FEL buffet data, their webpages are scraped or hardcoded values are used.

License

Menza is licensed under the GNU GPL v3.0 license.

About

This Android app shows dish menus for CTU cafeterias from agata.suz.cvut.cz web in much more pleasant and usable way for phones. It shows today and week menu, account balance, opening hours, contacts, announcements and address for all the canteens.

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Contributors 5