Fork von c3-fahrplan-druck für die FOSSGIS-Konferenz.
The Fahrplan in the style of a Fahrplan.
Dieses Repository ist ein Fork für die FOSSGIS-Konferenz. Geplant ist, Änderungen von c3-fahrplan-druck (Upstream) mitzuziehen, damit Verbesserungen und Fixes dort auch hier ankommen.
FOSSGIS-spezifisch angepasst wurden u. a.:
- Events:
events/fossgis2026/(und ggf. weitere FOSSGIS-Jahrgänge) mit Pretalx-Feed, FOSSGIS-Tracks und -Räumen; Pausen werden aus dem Pretalx-Widget übernommen und angezeigt. - Branding: FOSSGIS-Logo (farbig), FOSSGIS-Farben (Akzent HKS 6 K, Hintergrund für getönte Ansicht), Legendentext.
- Struktur: CCC-spezifische Styles/Referenzen (z. B. 39c3-Logo, Kario-Font) in den FOSSGIS-Events entfernt oder durch FOSSGIS-Varianten ersetzt.
- only-track: Die Sonderwerte
fahrplan(Hauptbühne) undabfahrplan(Musik-Floors) existieren bei FOSSGIS nicht und werden ignoriert;only-trackfiltert nur nach Track-Namen bzw. -Kürzeln. - Customization: Neben den gleichen Top-Level-Konstanten wie im Upstream nutzen die FOSSGIS-Events zusätzlich z. B.
breakRoomName,breakPrefix,breakTitlePrefix,redRoomsList; Raumnamen und Kürzel stehen in der FunktionabbreviateRoom(). - Video-Links:
streamingUrlByRoombildet Raum-Kürzel (wie inabbreviateRoom) auf die Livestream-URL (streaming.media.ccc.de) pro Raum ab. Leerer String''= kein Stream für diesen Raum. Am Konferenztag wird der Livestream-Link angezeigt, an vergangenen Tagen der Aufzeichnungs-Link (media.ccc.de/v/{slug}), an zukünftigen Tagen nur das Video-Icon ohne Link;do_not_recordwird weiterhin beachtet. - QR-Codes: Das Skript
scripts/generate_qr_code.pyerzeugt QR-Codes mit runden Modulen, optionalem Logo und Beschriftung für Links (z. B. Fahrplan-URL, Pretalx, Mastodon); sieheassets/README.md. - Filter-Links (FOSSGIS 2026): Die URL-Parameter
only-track,only-roomundonly-daylassen sich per Klick setzen und kombinieren. In der Legende sind die Track-Kürzel („Events im Hauptverkehr“) und die Raumliste („Räume / Rooms“) als Links umgesetzt: Ein Klick aktiviert den jeweiligen Filter (bestehende Parameter bleiben erhalten), ein zweiter Klick auf denselben Eintrag entfernt nur diesen Parameter (Toggle). Die Tageszeilen „Tag 1“, „Tag 2“ usw. in der Mehr-Tage-Ansicht sind ebenfalls Links zum Setzen vononly-day. Ein zentraler Reset ist über den Seitentitel („FOSSGIS Konferenz 2026“) möglich: Ein Klick lädt die Seite ohne Query-Parameter und hebt alle Filter auf. - Favoriten: Einzelne Vorträge können per Stern neben der Uhrzeit markiert werden; die IDs werden pro Veranstaltung im
localStoragedes Browsers gespeichert. Über die Toolbar kann die Ansicht auf gespeicherte Favoriten eingeschränkt werden (?favorites=1); angeboten werden ein Teilen-Link mit Hash-Fragment (#f=1/…), die Übernahme der Auswahl aus einem Teilen-Link als eigene Favoriten („Import“) sowie das Leeren aller Favoriten auf dem Gerät (mit Bestätigungsdialog). Stern und Toolbar werden beim Drucken nicht ausgegeben. - Link-Unterstreichungen werden im Print per
no-link-underline=1entfernt, Workaround für den Druck.
- Open
index.htmlin a browser (no build steps needed). - Append URL parameters to filter the rendered plan:
only-day=<n>: Render a single conference day (e.g.,only-day=1). Days use the indices from the JSON feed (see below; currently 0–4). Omit to show all days in one sheet. This also switches from per-day headers to time-band grouping.only-track=<nameOrCode>: Filter by track. Accepts full track names or the short codes from the track map (see table). Examples:only-track=Science,only-track=SCI. Special modes as homage to their original meanings:only-track=fahrplan(main stage content only) andonly-track=abfahrplan(music floors only), which override theonly-roomsetting.only-room=<room>: Filter by room, case-insensitively (e.g.,only-room=Stonewall IO). Abbreviations are intentionally not supported, but substrings work (e.g.,only-room=Stonewall).tinted-background=false: Disable the default yellow-tinted background color.columns=<n>: Set the number of columns (e.g.,columns=1for a single-column layout). The page width scales proportionally from the 8-column default. The special modecolumns=mobileenables a single-column view that uses the full device width.
- Parameters can be combined, e.g.,
?only-day=2&only-track=SCI.
We had some issues printing this to PDF if the size grows beyond DIN A0+. However, directly using the system (not the browser-provided) printing dialog and saving that as PDF or directly printing from that worked for us.
We strongly recommend directly using yellow paper (RAL 1003 Signalgelb/Signal Yellow) for physical prints (and setting tinted-background=false).
Feel free to fork this and use it on your event!
We plan to collect and archive Fahrpläne for various events. ❤️
If you create one for your event, please consider sharing it back with us so we can add it to the collection!
It should be as easy as forking this repo, adding a unique folder under events/ (possibly copying content from an existing event), and creating a pull request.
Top-level constants near the start of each event's index.html control basic event-specific behavior:
scheduleUrl: JSON feed to load (currently the 39C3 schedule).trackMap: Map track names from the feed to short codes shown in the table.totalDays: Number of conference days used for day labels and footer copy.headerDateRange: Text shown in the top-left header.stationName: Main title in the header area (also used when showing active filters).timeRanges: Time-band labels for single-day grouping.roomAbbrevMap: Exact room name to abbreviation/icon mapping.mainStageRoomAbbrevs: Abbreviation list for main stage highlighting andonly-track=fahrplanfiltering.musicRoomNames: Room name list used foronly-track=abfahrplanfiltering.roomAbbrevPartial: Partial room name matches to abbreviation/icon mapping.
For deeper layout or style tweaks, edit index.html and style.css directly.
If anything feels unclear, feel free to reach out (e.g., open an issue)!
You are invited to add yours.
A live departure-board-style monitor for congress talks, showing delays, scrolling titles, and a news ticker. Great for displaying on screens during the event.
A Typst-based Fahrplan generator, rendering the schedule as a clean vector graphic (SVG/PDF). Easy to configure.

