KCity. Stack und Spezifikation.
Ein ruhiger Abfahrtsmonitor und Fahrplaner für den Karlsruher Verkehrsverbund: die nächste Bahn, ohne Umweg über eine App, die erst etwas von dir will. Unabhängig, nicht mit dem KVV verbunden.
In Entwicklung
Stand: Oktober 2026
Haltestelle
Web · Deutsch und Englisch
KCity-API
Fastify · Zwischenspeicher
Auskunft
EFA oder TRIAS
Verkehrsverbund
offene Schnittstellen
Auf einen Blick
Die Eckwerte von KCity, belegt durch den Code.
Alle 20 Sekunden
Die Tafel einer Haltestelle kommt als laufender Strom, ohne Neuladen
Abfahrtstafel
Ohne Konto
Abfahrten, Verbindungen, Linien und Störungen ohne Anmeldung und ohne Tracking
Öffentliche Schnittstelle
Offene Daten
Fahrplandaten des KVV unter CC0, Abfahrten aus der offenen Auskunft
Datenanbindung
Von der Suche zur Abfahrt
Was zwischen Haltestelle und Tafel passiert.
Haltestelle suchen
Haltestelle suchen
Die Suche geht über die Haltestellen aus dem Fahrplandatensatz des Verbunds.
Tafel öffnen
Tafel öffnen
Die Abfahrten kommen als laufender Strom, mit Verspätung, Ausfall und Gleis.
Verbindung planen
Verbindung planen
Von A nach B mit Umstiegen und Fußwegen. Ein Fußweg ohne Straßenführung heißt Luftlinie.
Linien ansehen
Linien ansehen
Jede Linie mit ihren Halten in Reihenfolge, so wie der Datensatz sie kennt.
Störungen lesen
Störungen lesen
Meldungen aus den zuletzt angezeigten Abfahrten, gesammelt an einer Stelle.
Merken
Merken
Wer ein Konto hat, speichert Favoriten und Voreinstellungen. Für den Fahrplan braucht es keins.
Der Stack
Sechs Teile, ohne Analyse und ohne Werbung.
Web
Next.js 16 mit React 19 und TanStack Query, zweisprachig, hell und dunkel.
API
Fastify 5 auf Bun, die Verträge als Zod-Schemas, die Web und API teilen. Antworten der Auskunft hält Redis 20 Sekunden bis eine Stunde vor.
Auskunft
Drei Anbindungen hinter einer Schnittstelle: die offene EFA des KVV, TRIAS nach VDV 431-2 und Testdaten.
Fahrplandaten
Haltestellen und Linien aus dem GTFS-Datensatz des Verbunds unter CC0, in PostgreSQL mit Drizzle.
Konten
Better Auth mit Passkey und Anmeldelink, nur für Favoriten und Voreinstellungen. Die Registrierung ist geschlossen, Zugang gibt es per Einladung.
Datenschutz
Ohne Konto kein Cookie außer der gewählten Sprache. Keine Analyse, keine Werbung.
Was KCity nicht kann
Was fehlt, steht hier, damit es niemand für ein Versehen hält.
- Keine Live-Karte
- KCity zeigt Abfahrten und Verbindungen, aber nicht, wo eine Bahn gerade fährt.
- Ein Fußweg ohne Straßenführung ist eine Luftlinie
- Ohne Fußweg-Router gibt es keine Straßengeometrie. Die Strecke heißt dann Luftlinie und ist kürzer als der echte Weg.
- Kein Fahrkartenverkauf
- Es kommt kein Beförderungsvertrag zustande; Fahrkarten gibt es beim Verkehrsverbund.
- Nicht jede Haltestelle zeigt Abfahrten
- Ohne hinterlegte Kennung des Auskunftssystems bleibt die Tafel leer, denn eine geratene Kennung könnte die Abfahrten einer anderen Haltestelle zeigen.
- Nicht mit dem KVV verbunden
- KCity nutzt die offen erreichbaren Schnittstellen des Verbunds. Verbindlich ist immer die Auskunft des KVV.
Die nächste Bahn.
Ohne Konto.
Ohne Umweg.
Spezifikation
Daten
- Fahrplandaten
- GTFS-Datensatz des KVV unter CC0
- Abfahrten
- offene EFA-Auskunft des Verbunds, ohne Schlüssel
- TRIAS
- nach VDV 431-2, mit Zugang des Verbunds
- Testdaten
- Standard in der Entwicklung
Abfahrten
- Aktualisierung
- alle 20 Sekunden als Server-Sent Events
- Angaben
- Verspätung, Ausfall, Gleis, stufenfreier Zugang zur Haltestelle
- Störungen
- aus den Meldungen an den Abfahrten
- Ohne Kennung
- keine Tafel statt einer falschen
Verbindungen
- Strecke
- von A nach B mit Umstiegen
- Fußwege
- über Mapbox oder OSRM, sonst als Luftlinie
- Fußweg-Router
- vom Server aus, ohne deine IP-Adresse
Linien
- Übersicht
- nach Verkehrsmittel gruppiert
- Verlauf
- Kette der Haltestellen, ohne Trassengeometrie
- Farben
- aus dem Fahrplandatensatz
Konto
- Nötig für
- Favoriten und Voreinstellungen
- Registrierung
- standardmäßig geschlossen, Zugang per Einladung
- Anmeldung
- Passwort, Passkey, Anmeldelink oder Code per E-Mail
- Eigene Daten
- Export als JSON und Löschung
Datenschutz
- Cookies
- ohne Konto keins, höchstens die gewählte Sprache
- Analyse
- keine
- Schriften
- vom eigenen Server
Plattformen
- Web
- Deutsch und Englisch, hell und dunkel
- App für iOS und Android
- mit ExpoGeplant
Stand
- Fertig
- Abfahrten, Verbindungen, Linien, Störungen, Konten
- Offen
- Betrieb mit den Echtdaten des Verbunds
- Geplant
- App für iOS und Android
Häufige Fragen zu KCity
Kurz beantwortet, die Details stehen in der Spezifikation.
Ebenfalls auf Nouvex
Die übrigen Seiten, kurz erklärt.
Nouvex Mail
Stack und Spezifikation des quelloffenen Mailclients für Web, iPhone, iPad und Mac.
Team
Wer Nouvex entwirft und baut.