All Projects → SapuSeven → Betteruntis

SapuSeven / Betteruntis

Licence: gpl-3.0
An alternative mobile client for the Untis timetable system.

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to Betteruntis

Barinsta
Open-source alternative Instagram client on Android.
Stars: ✭ 717 (+1115.25%)
Mutual labels:  android-app, android-application
Phonenumberverificationui Android
Check out the new style for mobile number verification 😉😉😊😊
Stars: ✭ 52 (-11.86%)
Mutual labels:  android-app, android-application
Morphing Material Dialogs
Material dialog ❤️ morphing animation. An android kotlin UI library for building beautiful animations for converting a floating action button into a material dialog.
Stars: ✭ 806 (+1266.1%)
Mutual labels:  android-app, android-application
Zoomrecylerlayout
🎢 Zoom Recycler Layout Manager For Android Kotlin
Stars: ✭ 618 (+947.46%)
Mutual labels:  android-app, android-application
Testleavesloading
Android 自定义 View 之 LeavesLoading
Stars: ✭ 55 (-6.78%)
Mutual labels:  android-app, android-application
Music Player Go
🎶🎼 Very slim music player 👨‍🎤 100% made in Italy 🍕🌳🌞🍝🌄
Stars: ✭ 654 (+1008.47%)
Mutual labels:  android-app, android-application
Kodein Mvvm
Example app using Kodein for dependency injection with MVVM and Architecture Components
Stars: ✭ 26 (-55.93%)
Mutual labels:  android-app, android-application
Quill
👻 [MOVED TO https://github.com/TryGhost/Ghost-Android] The beautiful Android app for your Ghost blog.
Stars: ✭ 552 (+835.59%)
Mutual labels:  android-app, android-application
Amazing Android Apps
Amazing open source Android apps written in Java.
Stars: ✭ 1,063 (+1701.69%)
Mutual labels:  android-app, android-application
Androidkex
Extensions for Kotlin. Use the power of Kotlin to make your code smaller and beautiful.
Stars: ✭ 35 (-40.68%)
Mutual labels:  android-app, android-application
Permissionsflow
A simple library to make it easy requesting permissions in Android using Kotlin Coroutines.
Stars: ✭ 49 (-16.95%)
Mutual labels:  android-app, android-application
Filemanager
Android File Manager Demo
Stars: ✭ 36 (-38.98%)
Mutual labels:  android-app, android-application
Fasthub
FastHub the ultimate GitHub client for Android.
Stars: ✭ 5,543 (+9294.92%)
Mutual labels:  android-app, android-application
Mango
🏀 An Android app for dribbble.com
Stars: ✭ 659 (+1016.95%)
Mutual labels:  android-app, android-application
Changedetection
Automatically track websites changes on Android in background.
Stars: ✭ 563 (+854.24%)
Mutual labels:  android-app, android-application
Marvel App
Android application made with Kotlin and RxJava
Stars: ✭ 16 (-72.88%)
Mutual labels:  android-app, android-application
Android Arsenal.com
Source to android-arsenal.herokuapp.com
Stars: ✭ 541 (+816.95%)
Mutual labels:  android-app, android-application
Superbottomsheet
Android native BottomSheet on steroids 💪
Stars: ✭ 548 (+828.81%)
Mutual labels:  android-app, android-application
Shutup
Uses proximity sensor to perform actions when ringing, Can also schedule calls.
Stars: ✭ 14 (-76.27%)
Mutual labels:  android-app, android-application
Androidroom
Android example to show how to use Room to access SQLite database on device for reading and writing data. This example also shows how to use LiveData and ViewModel with Room to build reactive, well performing and easy to maintain applications.
Stars: ✭ 36 (-38.98%)
Mutual labels:  android-app, android-application

App Icon

BetterUntis

An alternative mobile client for the Untis timetable system.

CircleCI Translation status Gitter Donate with PayPal

You can download the latest automated debug build from my website.

Get it on F-Droid Get it on Google Play

Screenshots

Screenshot Screenshot Screenshot Screenshot

Development history

It was more and more obvious that my original version of BetterUntis had many design and performance flaws. As a result, development became increasingly more difficult. So I came to the conclusion to scrap the project and start over from scratch.

Although I reused some parts of the original code, my plan was to entirely switch to Kotlin. Kotlin has many features and libraries that immensely help to communicate with the Untis API and process the timetable data.

Another major change is the use of a custom WeekView (based on Till Hellmund's fork of Android-Week-View) for the timetable display. This also improved performance by a lot.

New features

  • Select your school by name or ID, no URL needed
  • Login by optionally using your password instead of app key
  • Zoomable timetable view
  • Improved overall design
  • Improved timetable selection dialog
  • Faster RoomFinder
  • Near instantaneous timetable loading
  • Lag-free timetable scrolling
  • Flexible timegrid allows to display hours outside the regular timetable (like consultation times with teachers)
  • Support for multiple accounts
  • Support for using a custom proxy server for increased privacy
  • Info Center for viewing events, contact hours and own absences.

Missing features (TODO)

  • No support for teacher-specific features (like editing homeworks or class management) - This is currently being worked on. View progress in the absence-check branch.
  • Almost no unit and integration tests

Available languages

  • English
  • German

Versions since 3.3.0 will also include:

  • Chinese (Simplified)
  • French
  • Norwegian Bokmål

Project Git Structure

I established a simple system to manage this Git repository. Basically, there are two main branches: master and develop. They both are permanent and can't be deleted.

Branch: master

This branch always and only contains the latest release version. This includes alpha/beta releases.

Branch: develop

This branch contains the current development version. Small changes and fixes can be committed directly to this branch.

When it reaches a state ready to release, it can be merged into the master-branch and a new release can be published.

Other branches

Especially bigger features which require multiple commits should branch off develop and merge back into it. These should be named in a way to describe the feature as clearly as possible.

These branches have a limited lifetime. After the last merge back into develop, they should be deleted if no longer needed.

Contributing

Translating into your language

Translating BetterUntis is very easy. Just sign up for an account at weblate.org. After you are logged in, go to the BetterUntis translation project.

There you can click the “Start new translation“ button if your language does not exist. If your language already exists, you can directly correct possible mistakes.

Your translation will be included in the next release of BetterUntis.

Implementing new features / Fixing bugs

Anything that requires you to perform code changes should be done on the develop branch. Pull requests should always be based on this branch, except for larger, experimental or incomplete features. These can be on their own, new feature branch.

Please do not submit pull requests that merge into the master branch, except for changes that only affect the repository on GitHub (e.g. README.md changes).

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].