untis-go Handbuch & Dokumentation

untis-go ist ein blitzschneller, ressourcenschonender nativer WebUntis-Desktopclient für Schülerinnen, Schüler und Lehrkräfte. Entwickelt in Go mit WebKitGTK für Linux und Browser-App-Mode für Windows – komplett ohne Electron-Ballast.

💡
Kernprinzipien: 100% Local-First, SQLite-Cache mit Sofortstart in unter 150 ms, AES-256-GCM Verschlüsselung aller Zugangsdaten und null Telemetrie.

🚀 2. Erste Schritte & Onboarding

Beim ersten Start führt dich der integrierte Onboarding-Assistent durch die Einrichtung:

  1. Schule suchen: Nutze die integrierte WebUntis-Schulsuche (Name oder Schulnummer eingeben).
  2. Anmelden: Gib deinen WebUntis-Benutzernamen und dein Passwort ein.
  3. Sicher speichern: Deine Zugangsdaten werden mit AES-256-GCM und PBKDF2 verschlüsselt lokal hinterlegt.
  4. Fertig: Der Stundenplan wird synchronisiert und steht ab sofort auch offline zur Verfügung.

⚡ 3. Funktionen im Detail

📅 Persönlicher Stundenplan

Tages- und Wochenansicht mit roter Live-Zeitlinie. Farbkodierte Fächer, Räume, Lehrkräfte und sofortige Kennzeichnung von Vertretungen, Raumänderungen oder Ausfällen.

👥 Weitere Pläne & Räume

Schnellwechsel zwischen Klassen, Lehrkräften und Fachräumen mit blitzschneller Live-Volltextsuche.

📝 Hausaufgaben-Manager

Übersicht aller WebUntis-Hausaufgaben plus manuell erfasste Aufgaben mit Fälligkeitsdatum und Abhaken per Mausklick.

💬 Mitteilungen & Postfach

Schulnachrichten, Elternbriefe und Lehrerankündigungen direkt im Desktop-Client mit Volltextanzeige.

📅 iCalendar (.ics) Export

1-Klick-Export deines Stundenplans für Google Kalender, Apple Kalender und Thunderbird mit VEVENT-Standardblöcken.

🔔 Hintergrund-Daemon & Tray

Überwacht Stundenplanänderungen im Hintergrund und sendet native Benachrichtigungen bei Raumwechsel oder Entfall.

💻 4. Installation & Build

Linux (x86_64)

# 1. Herunterladen & Entpacken
tar -xzf untis-go-*-linux.tar.gz

# 2. Ins System installieren
sudo cp untis-go /usr/local/bin/

# 3. Starten
untis-go

Windows (x86_64)

Lade das ZIP-Archiv von der GitHub Releases Seite herunter, entpacke es und führe untis-go.exe aus. Es ist keine Installation nötig.

Aus dem Quellcode bauen

# Abhängigkeiten installieren:
# Arch Linux / CachyOS: sudo pacman -S webkit2gtk-4.1 gtk3 gcc
# Ubuntu / Debian:       sudo apt install libwebkit2gtk-4.1-dev libgtk-3-dev build-essential

git clone https://github.com/benzjeremy/untis-go.git
cd untis-go
go build -o untis-go .
./untis-go

🔒 5. Sicherheit & Datenschutz

AES-256-GCM

Passwörter und Sitzungstoken werden mit AES-256 im Galois/Counter-Modus verschlüsselt gespeichert. Kein Klartext auf der Festplatte.

PBKDF2 Schlüsselableitung

100.000 Iterationen mit maschinenspezifischem Fingerabdruck (Hardware-ID, Benutzer-Salt) zur Absicherung gegen Offline-Brute-Force.

Anti-DNS-Rebinding

Der interne HTTP-Server bindet ausschließlich an 127.0.0.1 mit dynamischem Zufallstoken und prüft alle Request-Header strikt.

⌨️ 6. Tastenkombinationen

Taste Aktion
← / → Vorheriger / Nächster Tag bzw. Woche
T Zu Heute springen
D Tagesansicht aktivieren
W Wochenansicht aktivieren
Esc Offene Dialoge, Info-Sheets und Menüs schließen

❓ 7. FAQ & Problemlösung

Funktioniert untis-go ohne Internetverbindung?

Ja! Alle synchronisierten Stundenpläne, Hausaufgaben und Mitteilungen werden in einer lokalen SQLite-Datenbank gespeichert. Du kannst deinen Stundenplan jederzeit ohne Internetverbindung öffnen.

Werden Passwörter an Dritte übertragen?

Nein. Die Zugangsdaten kommunizieren ausschließlich über verschlüsseltes HTTPS direkt mit der WebUntis-Instanz deiner Schule. Es existiert kein zwischengeschalteter Server und keinerlei Telemetrie.

Wo werden Fehler oder Feature-Wünsche gemeldet?

Bitte erstelle ein Ticket auf der GitHub Issues Seite oder schreibe an benzjeremy@pm.me.