Open-source departure boards for Android widgets, Windows and the web. Made in Bremen, powered by Transitous/MOTIS across many countries.
See the codeDeine Haltestelle. Bei dir. Kostenlose, nichtkommerzielle Abfahrtsanzeige für Bremen.
Website & Downloads · Live-Board · Releases
docs/workflows/build.yml (noch nicht aktiviert; der verbundene GitHub-Zugang hat keinen Workflow-Schreibzugriff).Windows ist ein eigenständiges Desktop-Fenster, keine Erweiterung des Windows-11-Widgets-Panels. iPhone verwendet die Web-App (Safari → Teilen → Zum Home-Bildschirm). Ein natives iOS-Widget ist nicht enthalten; dafür sind Xcode, Apple-Signierung und ein separater WidgetKit-Build erforderlich.
Android: checkit-android.apk aus den Releases installieren, Checkit öffnen, Haltestelle auswählen und „Widget hinzufügen“ tippen. Alternativ über das Widgets-Menü des Launchers. Alle Widgets verwenden dieselbe Haltestelle. Ein vorhandener alter Debug-Build hat einen anderen Signaturschlüssel und muss vor dem Wechsel zur Release-APK deinstalliert werden (lokale Auswahl geht dabei verloren).
Windows: Checkit.exe herunterladen und direkt starten. Keine Installation notwendig. Alternativ die portable ZIP entpacken. Keine zusätzliche .NET-Installation nötig. Über die Kopfzeile verschieben, unten rechts skalieren; ◇ schaltet „Immer im Vordergrund“ um. Die EXE ist nicht mit einem kommerziellen Windows-Code-Signing-Zertifikat signiert.
Web und Windows: 60 Sekunden. API-Cache: 45 Sekunden. Android: Live-Modus mit dauerhafter Benachrichtigung lädt bei eingeschaltetem Bildschirm jede Minute neue Daten; Widget-Minuten und abgelaufene Abfahrten werden alle zehn Sekunden aktualisiert. Alle Widgets teilen denselben Datenstand. Ohne Live-Modus bleibt der ungefähre 15-Minuten-Hintergrundrhythmus von Android. Hersteller-Energiesparfunktionen können den Dienst stoppen (bei Xiaomi gegebenenfalls Autostart und Akku → Keine Beschränkungen erlauben). Restzeiten werden nie negativ. Ergänzende Uhrzeiten sind Europe/Berlin. Datenstand und veraltete Daten werden sichtbar gekennzeichnet. Keine Garantie der Echtzeitabdeckung oder Abfahrtsdaten.
Node.js 22 oder neuer:
npm start
npm test
npm run build
Öffnen: http://127.0.0.1:8787. Keine npm-Laufzeitabhängigkeiten nötig.
JDK 17+, Android SDK 34. android/gradlew -p android assembleDebug.
Unter Windows erzeugt scripts/build-android.ps1 einen signierten Release-Build. Der private Schlüssel liegt ausschließlich in %LOCALAPPDATA%\CheckitSigning\checkit-release.jks, das Passwort Windows-DPAPI-verschlüsselt daneben. Beide gehören nicht in Git. Diesen Schlüssel sicher sichern: künftige APK-Updates benötigen denselben Schlüssel. Für andere Build-Umgebungen CHECKIT_KEYSTORE und CHECKIT_KEY_PASSWORD setzen. Die CI-Vorlage erzeugt absichtlich nur Debug-Testartefakte, keine anders signierten öffentlichen Updates.
API-Adresse überschreiben: -PapiBaseUrl=https://dein-projekt.vercel.app. Der Standard zeigt auf die veröffentlichte Checkit-API. Nur HTTPS ist für die Distribution erlaubt.
Widget-Gerätetest mit laufendem Emulator: android/gradlew -p android connectedDebugAndroidTest. Er lädt echte Daten, hostet das echte Glance-Widget in drei Größen und prüft Zeitspalten und Datenstand. Debug-Testhost ist nicht Bestandteil der Release-App.
dotnet publish windows/Checkit.csproj -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -o artifacts/windows
Benötigt .NET 10 SDK. Einstellungen/Cache: %LOCALAPPDATA%\Checkit.
npx vercel deploy --prod
vercel.json verwendet statische Dateien aus public und eine Node-Funktion unter api/index.js. Website und native Clients teilen denselben normalisierten API-Vertrag. APK/EXE/ZIP liegen in GitHub Releases, nicht im Vercel-Build.
Code: MIT. Daten unter den jeweiligen Transitous-Quelllizenzen, einschließlich © OpenStreetMap-Mitwirkende. Beachte die Transitous-Nutzungsbedingungen: öffentliche Open-Source-Anwendung, nichtkommerziell, geringe Last. Bei größerer Nutzung muss die Infrastruktur mit dem Anbieter abgestimmt werden. Keine offizielle Anwendung von BSAG oder VBN. VbnProvider bleibt ein nicht aktivierter Erweiterungspunkt; ein eigener VBN-Feed ist nicht implementiert.
Keine Accounts, kein Tracking, kein Datenbankdienst. Präferenzen und Cache bleiben lokal. Vercel und GitHub verarbeiten technische Verbindungsdaten beim Abruf.
Windows-Icon-Regressionsprüfung: powershell.exe -NoProfile -STA -File scripts/test-windows-icon.ps1. Nach dem Publish zusätzlich die tatsächlich ausgelieferte EXE starten und das Live-Fenster prüfen.
4 commits
Kotlin
50.4%
JavaScript
21.9%
HTML
14.4%
C#
10.4%
PowerShell
2.9%
Open-source departure boards for Android widgets, Windows and the web. Made in Bremen, powered by Transitous/MOTIS across many countries.
See the codeDeine Haltestelle. Bei dir. Kostenlose, nichtkommerzielle Abfahrtsanzeige für Bremen.
Website & Downloads · Live-Board · Releases
docs/workflows/build.yml (noch nicht aktiviert; der verbundene GitHub-Zugang hat keinen Workflow-Schreibzugriff).Windows ist ein eigenständiges Desktop-Fenster, keine Erweiterung des Windows-11-Widgets-Panels. iPhone verwendet die Web-App (Safari → Teilen → Zum Home-Bildschirm). Ein natives iOS-Widget ist nicht enthalten; dafür sind Xcode, Apple-Signierung und ein separater WidgetKit-Build erforderlich.
Android: checkit-android.apk aus den Releases installieren, Checkit öffnen, Haltestelle auswählen und „Widget hinzufügen“ tippen. Alternativ über das Widgets-Menü des Launchers. Alle Widgets verwenden dieselbe Haltestelle. Ein vorhandener alter Debug-Build hat einen anderen Signaturschlüssel und muss vor dem Wechsel zur Release-APK deinstalliert werden (lokale Auswahl geht dabei verloren).
Windows: Checkit.exe herunterladen und direkt starten. Keine Installation notwendig. Alternativ die portable ZIP entpacken. Keine zusätzliche .NET-Installation nötig. Über die Kopfzeile verschieben, unten rechts skalieren; ◇ schaltet „Immer im Vordergrund“ um. Die EXE ist nicht mit einem kommerziellen Windows-Code-Signing-Zertifikat signiert.
Web und Windows: 60 Sekunden. API-Cache: 45 Sekunden. Android: Live-Modus mit dauerhafter Benachrichtigung lädt bei eingeschaltetem Bildschirm jede Minute neue Daten; Widget-Minuten und abgelaufene Abfahrten werden alle zehn Sekunden aktualisiert. Alle Widgets teilen denselben Datenstand. Ohne Live-Modus bleibt der ungefähre 15-Minuten-Hintergrundrhythmus von Android. Hersteller-Energiesparfunktionen können den Dienst stoppen (bei Xiaomi gegebenenfalls Autostart und Akku → Keine Beschränkungen erlauben). Restzeiten werden nie negativ. Ergänzende Uhrzeiten sind Europe/Berlin. Datenstand und veraltete Daten werden sichtbar gekennzeichnet. Keine Garantie der Echtzeitabdeckung oder Abfahrtsdaten.
Node.js 22 oder neuer:
npm start
npm test
npm run build
Öffnen: http://127.0.0.1:8787. Keine npm-Laufzeitabhängigkeiten nötig.
JDK 17+, Android SDK 34. android/gradlew -p android assembleDebug.
Unter Windows erzeugt scripts/build-android.ps1 einen signierten Release-Build. Der private Schlüssel liegt ausschließlich in %LOCALAPPDATA%\CheckitSigning\checkit-release.jks, das Passwort Windows-DPAPI-verschlüsselt daneben. Beide gehören nicht in Git. Diesen Schlüssel sicher sichern: künftige APK-Updates benötigen denselben Schlüssel. Für andere Build-Umgebungen CHECKIT_KEYSTORE und CHECKIT_KEY_PASSWORD setzen. Die CI-Vorlage erzeugt absichtlich nur Debug-Testartefakte, keine anders signierten öffentlichen Updates.
API-Adresse überschreiben: -PapiBaseUrl=https://dein-projekt.vercel.app. Der Standard zeigt auf die veröffentlichte Checkit-API. Nur HTTPS ist für die Distribution erlaubt.
Widget-Gerätetest mit laufendem Emulator: android/gradlew -p android connectedDebugAndroidTest. Er lädt echte Daten, hostet das echte Glance-Widget in drei Größen und prüft Zeitspalten und Datenstand. Debug-Testhost ist nicht Bestandteil der Release-App.
dotnet publish windows/Checkit.csproj -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -o artifacts/windows
Benötigt .NET 10 SDK. Einstellungen/Cache: %LOCALAPPDATA%\Checkit.
npx vercel deploy --prod
vercel.json verwendet statische Dateien aus public und eine Node-Funktion unter api/index.js. Website und native Clients teilen denselben normalisierten API-Vertrag. APK/EXE/ZIP liegen in GitHub Releases, nicht im Vercel-Build.
Code: MIT. Daten unter den jeweiligen Transitous-Quelllizenzen, einschließlich © OpenStreetMap-Mitwirkende. Beachte die Transitous-Nutzungsbedingungen: öffentliche Open-Source-Anwendung, nichtkommerziell, geringe Last. Bei größerer Nutzung muss die Infrastruktur mit dem Anbieter abgestimmt werden. Keine offizielle Anwendung von BSAG oder VBN. VbnProvider bleibt ein nicht aktivierter Erweiterungspunkt; ein eigener VBN-Feed ist nicht implementiert.
Keine Accounts, kein Tracking, kein Datenbankdienst. Präferenzen und Cache bleiben lokal. Vercel und GitHub verarbeiten technische Verbindungsdaten beim Abruf.
Windows-Icon-Regressionsprüfung: powershell.exe -NoProfile -STA -File scripts/test-windows-icon.ps1. Nach dem Publish zusätzlich die tatsächlich ausgelieferte EXE starten und das Live-Fenster prüfen.
4 commits
Kotlin
50.4%
JavaScript
21.9%
HTML
14.4%
C#
10.4%
PowerShell
2.9%