Deine Reisen · Deine Karte · Deine Geschichte

Jede Reise, die du gemacht hast,
auf einer Karte.

Leite eine Buchungs-E-Mail weiter — TravStats liest sie aus, zeichnet die Route auf deinem Globus und lässt deine Daten nie deinen Server verlassen.

So funktioniert's

Buchungs-E-Mail rein. Reise raus.

TravStats liest die Bestätigungen, die Airlines, Reedereien und Hotels dir sowieso schicken — als weitergeleitete Mail, als .msg- oder .eml-Datei, als PDF oder als Foto einer Rechnung. Ein Dokument sagt selbst, ob es ein Flug, eine Kreuzfahrt oder ein Hotel ist; eine Bordkarte wird zuerst über ihren Strichcode gelesen; ein Werbe-Newsletter wird kein Flug. Alles andere bleibt, wo es war. Wähle unten ein Beispiel und sieh, was der Parser sieht.

[SIMULATED BOOKING CONFIRMATION]
Subject: Booking confirmation — your flight LH 401
 
Dear Traveling Tom,
 
Thank you for booking with Lufthansa. Your reservation is
confirmed.
 
Booking reference: X1Y2Z3
Frequent flyer: ******5678
 
FLIGHT DETAILS
Flight: LH 401
Date: 15 June 2026
Departure: Frankfurt (FRA), Terminal 1, 10:35
Arrival: New York JFK (JFK), Terminal 1, 13:25
 
Passenger: TRAVELING/TOM
Class: Economy (Y)
Seat: 24A
 
Total paid: € 583.40 (Card ending **** 1234)

Extracted

Flight

LH 401

From

Frankfurt (FRA)

To

New York JFK (JFK)

Date

15 June 2026

Cabin

Economy

Added to your logbook — visible on the globe.

Privacy mode active. These are fictional booking confirmations with fake passenger names, PNRs and card numbers. In your own self-hosted TravStats, your real emails are parsed locally — they never leave your server.

Die besten Ergebnisse erzielt der Ollama-Parser (lokales LLM, empfohlen). Ohne LLM arbeiten die festen Vorlagen — Booking.com, bekannte Airlines, Pauschalreise-Unterlagen — und die Dokumenterkennung; was keine Vorlage kennt, braucht Ollama.

So sieht's aus

Ein Logbuch, das du wirklich öffnen wirst.

Das Web-UI läuft auf deinem Laptop, deinem Tablet und deinem Smartphone. Fünf Ansichten, in denen du die meiste Zeit verbringen wirst:

travstats.local / dashboard
TravStats Dashboard, Globus-Modus: Flug-Bögen und Kreuzfahrt-Seerouten auf einem 3D-Globus, mit Legende und Sichtbar-Zähler

Globus

Jeder Flug als Großkreis-Bogen, jede Kreuzfahrt als Seeroute — alle Bereiche auf einem Globus.

travstats.local / stats
TravStats Statistiken, Reiter Gesamt: Jahresauswahl, Erlebnisse, besuchte Länder, aktive Reisetage, Errungenschaften und Aktivität pro Jahr

Statistiken

Ein Reiter pro Bereich und einer für alles; jedes Jahr einzeln oder im Vergleich.

travstats.local / dashboard · 390 px
TravStats Dashboard auf einem Smartphone: der Globus mit Legende und Sichtbar-Zähler in der schmalen Ansicht

Auf dem Telefon

Dasselbe Web-UI in 390 Pixel Breite — kein eigenes Layout, dieselben Daten.

travstats.local / cruises / …
TravStats Kreuzfahrt-Detailseite: Route mit Häfen und Seetag, Seeroute auf der Karte, Kabine, Kosten und Notizen

Kreuzfahrt

Jeder Hafen, jeder Seetag, die Seeroute auf der Karte — und ein Knopf, um sie von Hand zu korrigieren.

travstats.local / flights / …
TravStats Flug-Detailseite: Airline und Flugnummer, Route, Flugzeug, Buchungsreferenz, Sitz, Terminal, Gate, Preis und Reisebegleiter

Flug

Jeder Flug hat eine Seite, auf der man ihn liest — Sitz, Gate, Buchung, Flugzeug, Preis, Begleiter.

Echte Screenshots aus TravStats 2.6.0 — Demo-Konto, deutsche Oberfläche, unbearbeitet.

Warum TravStats

Deine Reisegeschichte verdient mehr als eine Tabelle.

Jeder Flug, den du je gemacht hast

Leite eine Buchungsbestätigung weiter. TravStats liest die Route, zeichnet den Bogen auf deinem Globus und merkt sie sich für immer — vom ersten Transatlantik-Flug bis zum Wochenend-Hop.

Kreuzfahrten — mit jedem Hafen

Flüge sind nur der Anfang. Importiere eine Kreuzfahrt aus E-Mail oder PDF: Schiff, jeder Hafen, jeder Seetag — und die Flüge einer Fly-&-Cruise-Reise gleich mit. Die Seeroute wird berechnet und lässt sich von Hand korrigieren.

Deine Erinnerungen, auf deinem Server

TravStats lebt in einem Docker-Container auf deiner eigenen Hardware. Keine Werbung. Keine Analytics. Keine AGB, die sich nächste Woche ändern.

Zahlen, die deine Geschichte erzählen

Wie viele Kilometer? Wie viele Länder? Meist-geflogene Airline? TravStats beantwortet Fragen über deine eigene Reisegeschichte, die du dir nie gestellt hast.

Bring deine Vergangenheit mit

Wirf deinen Flightradar24-Export, eine OpenFlights-CSV oder eine beliebige Flug-Tabelle rein. TravStats erkennt die Spalten, zeigt dir eine Vorschau und importiert — in Sekunden, nicht einem Abend.

Unterkünfte

Hotels sind ein eigener Bereich.

Übernachtungen werden geführt wie Flüge und Kreuzfahrten: ein Haus mit Kette, Adresse und Nadel auf der Karte, und darunter jeder Aufenthalt mit Zimmer, Verpflegung, Bewertungen je Kategorie, Preis, Bonusprogramm und der Reise, zu der er gehört. Fotos vom Haus, der Lobby oder dem Blick hängen am Hotel und überleben jeden Aufenthalt.

  • Ein eigenes Statistik-Kapitel. Was eine Nacht gekostet hat — nach Jahr, Land, Kette und Verpflegung, mit dem Median über Nächte statt über Buchungen. Wo die Nächte lagen, wann sie lagen, die längste Zeit am Stück fern von zuhause. Und ein Reisekonto, das jedes Jahr in Hotel, Schiff, Flugzeug und zuhause aufteilt und die Tage nennt, die es nicht zuordnen kann.
  • Bestätigungen liest TravStats selbst. Booking.com-Mails nimmt eine feste Vorlage — an 95 echten Bestätigungen gemessen findet sie den Aufenthalt in 93 und den Preis in allen 93. Was die Vorlage nicht kennt, geht denselben Weg wie ein Flug über Ollama; eine fotografierte Hotelrechnung ist ebenfalls ein Dokument.
  • Ein Aufenthalt zählt, wenn er vorbei ist. Ein gemerktes Haus ist kein Besuch, eine Buchung für nächsten Monat keine geschlafene Nacht — beides wird getrennt ausgewiesen, nie in eine Summe gefaltet. Ein Hotel, das du nicht mehr datieren kannst, darf nur einen Monat, nur ein Jahr oder gar kein Datum tragen und sagt, welches.
Hotels & Aufenthalte im Handbuch →
travstats.local / dashboard / lodging
TravStats Dashboard, Reiter Unterkünfte, auf einer frischen Instanz: die Weltkarte, ein leeres Aktivitätspanel und der Hinweis, das erste Hotel anzulegen oder eine Buchungs-E-Mail, ein PDF oder eine CSV-Liste zu importieren

Der Unterkünfte-Reiter, bevor das erste Hotel drin ist

Eine frische Instanz landet auf einem Startpunkt, nicht auf einer leeren Karte: Hotel anlegen, oder Buchungs-E-Mail, PDF und CSV-Liste importieren. Das Demo-Konto hat keine Aufenthalte, darum ist die Karte hier leer.

Länder

Länder, die du belegen kannst.

Ein Land zählt nach dem, was beweist, dass du dort warst — nicht danach, wo ein Flug aufgesetzt hat. Die alte Zahl war zu hoch und zu niedrig zugleich: ein vierstündiges Umsteigen zählte als Besuch, ein Land, das du mit dem Auto erreicht und eine Woche lang drin geschlafen hast, gab es gar nicht. Jetzt trägt jedes Land seinen stärksten Beleg.

  1. Übernachtet

    Ein abgeschlossener Aufenthalt, ein erfasstes Haus, ein Hafenanlauf über Nacht — oder Ankunft und Abflug an verschiedenen Ortstagen.

  2. Besucht

    Ein Aufenthalt am selben Tag oder ein erfasster Ort. Ein Tagesausflug ist kein Umsteigen: MUC–FCO–FRA ist ein Tag in Rom.

  3. Durchgereist

    Mit dem Auto durchgefahren, gelesen aus der Standorthistorie einer Dawarich-Anbindung. Die Stufe erscheint erst, wenn ein Konto eine Standorthistorie hat.

  4. Nur umgestiegen

    Flugzeug gewechselt und sonst nichts. Standardmäßig nicht in der Kopfzahl — aber ausgegraut in der Liste, nie versteckt, weil Flüge lückenhaft erfasst sind.

Wie streng gezählt wird, ist eine Einstellung: eine Vorgabe der Instanz, die jedes Konto übersteuern darf. Die Wahl ist eine der Belegstufen — es gibt mit Absicht keine Stunden-Schwelle, weil sechs und zwölf Stunden auf einem echten Konto dieselben Länder ergaben. Angaben, die sich widersprechen — eine Adresse in einem anderen Land als dem gespeicherten, ein Check-out vor dem Check-in — landen als Frage im Posteingang. Nichts wird still korrigiert, und keine Markierung ändert eine Zahl von selbst.

travstats.local / passport Beta
TravStats Reisepass: 52 von 52 Ländern gezählt, 64 Flughäfen, 232 Einreisen, 6 von 7 Kontinenten; darunter der Nachweis-Kasten mit den Stufen Übernachtet, Besucht und Nur umgestiegen und ein Raster aus Flughafen-Stempeln mit Datum

Der Reisepass — hinter dem Beta-Schalter

Jedes gezählte Land nennt seine Stufe und die Datensätze dahinter; eine Zeile aufklappen listet Flüge, Kreuzfahrten, Orte und Häuser mit Link. Die Zählweise gilt für alle — nur diese Seite ist Beta.

travstats.local / inbox
TravStats Posteingang: der Abschnitt Zu prüfen mit dem Hinweis, dass sich bei keinem Eintrag zwei Angaben widersprechen, darunter die Flug-Updates mit ihrer Statistik

Der Posteingang

Offene Fragen zu deinen Daten und vorgeschlagene Flug-Updates an einer Stelle. Jede Frage nennt beide Werte und markiert keinen als richtig. Steht immer im Menü; das Abzeichen sagt, ob etwas wartet.

Länder & Reisepass im Handbuch →

Geld

Jede Währung, ein ehrliches Gesamt.

Ein Preis darf in jeder der 155 ISO-4217-Währungen stehen — in der, in der du wirklich bezahlt hast. Umgerechnet wird zuerst über die Europäische Zentralbank, verbindlich und selbst hostbar, zurück bis 1999; für Währungen, die die EZB nicht führt, über einen freien, schlüssellosen Datensatz, den du als Betreiber ganz abschalten kannst.

Wo keine Quelle einen Kurs hat, bleibt der Betrag in seiner Währung stehen, wird als „kein Kurs“ gekennzeichnet, zählt in keine Summe — und die Summe sagt, wie viele Einträge ihr fehlen. Einen eigenen Kurs darfst du eintragen; er wird immer als deiner ausgewiesen, nie als amtlicher. Kreuzfahrt-Kosten werden je Währung berichtet und nie addiert. 300 USD und 300 EUR werden nirgends mehr zu „600 €“.

Geld & Währungen im Handbuch →

Beispiel · Hotelkosten 2025

4.812 €

aus 11 Aufenthalten — 2 ohne Kurs, nicht enthalten

  • Lissabon · 4 Nächte 612,00 €
  • Chicago · 3 Nächte 741 USD ≈ 684,10 €
  • Ulaanbaatar · 2 Nächte 380.000 MNT kein Kurs
  • Bangkok · 5 Nächte 18.900 THB ≈ 497,30 € · dein Kurs

Illustration mit erfundenen Zahlen. Die Formulierungen — „kein Kurs“, „dein Kurs“, „nicht enthalten“ — sind die der App.

travstats.local / trips / …
TravStats Reise-Detailseite Alaska Expedition, abgeschlossen: Kacheln für Flüge, Kreuzfahrten, Aufenthalte, Länder, Reisende und Gesamtkosten 3.390 Euro, die Länderchips DE, DK und NO, dazu die Reiter Übersicht, Timeline, Karte, Galerie, Logistik und Touren

Eine Reise, die alles zusammenhält

Flüge, Kreuzfahrten, Aufenthalte und Orte hängen an einer Reise; sie zählt Länder, Reisende und den Gesamtpreis. Der Touren-Reiter und die KI-Zusammenfassung sind auf diesem Demo-Konto sichtbar, weil dort der Beta-Schalter an ist.

Import & Export

Tabelle rein, Tabelle raus.

Das ganze Logbuch exportiert in eine Tabelle — ein Blatt je Tabelle: Flüge, Kreuzfahrten und ihre Stopps, Häuser und ihre Aufenthalte, Orte und ihre Besuche — und kommt wieder zurück. Spalte A trägt die Id: eine Zeile, die mit einer zurückkommt, ändert den Datensatz, den sie nennt; eine ohne wird angelegt. Flughäfen reisen als IATA-Code, weil ein Code das ist, was du tippen und prüfen kannst.

  • Vorschau vor dem Schreiben. Der Import zeigt je Blatt, was er ändern würde, und fragt, was mit dem geschehen soll, was schon da ist: nur ergänzen, zusammenführen oder Inhalt ersetzen — der einzige Modus, der Daten verlieren kann, und der darum vorher ein vollständiges Backup zieht und dich die Zahl der verschwindenden Einträge bestätigen lässt.
  • Jeder Import hinterlässt eine Spur. Flüge, Kreuzfahrten und Aufenthalte wissen, aus welchem Dokument und welchem Lauf sie stammen. Dasselbe Dokument zweimal gelesen ergibt nichts Neues, und ein ganzer Lauf lässt sich als ein Ganzes zurücknehmen.
  • Deine Vergangenheit kommt mit. Flightradar24-Export, OpenFlights-CSV, eine beliebige Flug-Tabelle, eine gespeicherte Google-Maps-Liste — die Spalten werden erkannt, fragwürdige Zeilen zuerst gezeigt, und eine Zeile, die nicht deine ist, wird abgelehnt statt angewandt.
Tabellen-Import im Handbuch →

Sicherheit

Zwei Faktoren, oder gar kein Passwort.

Ein Reise-Logbuch weiß, wann du nicht zuhause bist. Seit 2.6.0 kannst du dein Konto entsprechend absichern.

Zweiter Faktor

TOTP aus jeder Authenticator-App, mit einmalig nutzbaren Wiederherstellungscodes. Der zweite Faktor wird vor einer erzwungenen Passwortänderung abgefragt, nie danach — ein Test hält die Reihenfolge fest.

Passkeys

Ein Passkey ersetzt das Passwort ganz und gilt zugleich als zweiter Faktor, weil er Besitz plus eine lokale Geste beweist. Die Anmeldung fragt nicht nach einem Namen, damit dein Passwortmanager den Schlüssel selbst anbieten kann. Ein Administrator kann einen ausgesperrten zweiten Faktor zurücksetzen.

Content-Security-Policy

Die Seite trägt eine CSP; Skripte kommen nur von deiner Instanz. Die Emoji-Datenbank des Listensymbol-Pickers liefert deine Instanz selbst, nicht ein Content-Netzwerk — so funktioniert sie auch ohne Weg ins Internet.

Nichts im Zwischenspeicher

Jede API-Antwort ist standardmäßig Cache-Control: no-store, weil ein geteilter Cache dabei beobachtet wurde, die Antwort eines angemeldeten Nutzers einem anderen auszuliefern. Die Sitzung liegt in einem HttpOnly-Cookie, nie im Local Storage.

Sicherheit im Handbuch →

Beta

Was hinter dem Schalter liegt.

Unfertige Bereiche liegen hinter einem Schalter in den Admin-Einstellungen. Aus ist die Vorgabe; wer testen will, schaltet ein. Das Admin-Panel listet, was der Schalter einschaltet — gelesen aus derselben Registratur, die die App selbst prüft, damit es nichts behaupten kann, was der Build nicht tut. Jeder Eintrag nennt, warum er noch versteckt ist und was ihn zurückbringt.

  • Orte

    Ein eigener Bereich mit Listen, die du selbst baust, kuratierten Checklisten — die Weltwunder, das UNESCO-Welterbe mit 1.247 Stätten, Nationalparks, Museumsschiffe — und dem Import gespeicherter Google-Maps-Listen. Die Routen sind für API und Companion live; das Web-Panel wartet auf den Rest des Bereichs.

  • Reisepass

    Stempel, ein Kontinente-Band und die Ländertabelle mit Beleg je Land. Fertig und mit der Statistik-Seite abgeglichen, aber mitten in einem Release-Kandidaten gelandet — darum hier, bis er eine Release-Prüfung hatte.

  • Touren

    Eine Reise gewandert, gefahren, geradelt oder mit der Fähre — Abschnitte mit eigener Linie auf der Karte und einem Routeneditor für die Maus. Funktioniert Ende zu Ende; der Eigentümer hat sie als unfertig eingestuft.

  • Companion-App

    TravStats Companion ist in Erprobung. Die Kopplung eines Telefons — der Geräte-Abschnitt, in dem ein Kopplungscode entsteht — liegt hinter dem Schalter. Keinen Store-Eintrag, kein Termin.

  • Dawarich

    Die Anbindung an eine Dawarich-Instanz liefert aufgezeichnete Strecken für Touren und die Stufe „Durchgereist“. Koordinaten leben nur für die Dauer eines Laufs; gespeichert wird der Tag, das Land und eine Zahl an Messpunkten.

  • Farben je Bereich, KI-Zusammenfassung

    Eine eigene Farbe je Bereich statt der Markenfarbe — offen ist, ob eine Instanz ihre Bereiche umlackieren darf. Und die KI-Zusammenfassung einer Reise, die auf eine fertige Reisen-Seite wartet.

Der Beta-Schalter im Handbuch →

Persönliche Weltrekorde

Die Zahlen, die dein Posteingang heimlich getrackt hat.

Jeder TravStats-Nutzer landet irgendwann hier — überrascht von der eigenen Reisegeschichte. Die Zahlen unten sind illustrativ, die Kategorien sind echt.

Geflogene Distanz

0 km

≈ 6,2× um die Erde

Besuchte Länder

0

von 195 weltweit

Stunden in der Luft

0 h

≈ 24 Tage am Stück

Meist-geflogene Route

FRA ↔ JFK

0× zusammen · 86.884 km

Über 270 leise kleine Trophäen

Reisen, die sich lohnen — auch wenn niemand zuschaut.

Jeder Flug, jede Kreuzfahrt, jede Nacht im Hotel und jeder Ort, den du loggst, schaltet mehr frei als eine Zeile in der Datenbank. TravStats verteilt über 270 Errungenschaften in acht Kategorien — für Langstrecken-Reisende, Hotelketten-Sammler, Länder-Sammler und Liebhaber kurioser Zufälle: Freitag der 13., ein Palindrom-Datum, eine 777 in einer 777. Ein Abzeichen wird nur an einem echten Freischalttag vergeben, und ein einmal erreichtes bleibt erreicht.

  • Entdecker
  • Distanz
  • Sammler
  • Elite
  • Spezial
  • Planer
  • Überlebenskünstler
  • Kurios

Globetrotter

Erreicht

Lande in 25 verschiedenen Ländern.

Langstrecke

Erreicht

Überstehe einen einzelnen Flug von 12 Stunden oder mehr.

Logbuch des Kapitäns

Erreicht

Befahre dein erstes Schiff.

Einmal um die Welt

Verschlossen

Lege den Erdumfang zurück — 40.075 km geloggt. Noch 14.206 km

Marken-Entdecker

Verschlossen

Übernachte bei drei verschiedenen Hotelketten. 1 von 3

Stadtbummler

Verschlossen

Besuche Orte in fünf verschiedenen Städten. Orte sind ein Beta-Bereich

+ 270 weitere — von Äquator-Crosser und Antimeridian über Nicht wählerisch (drei Unterkunftsarten) bis Flottenbesuch (zehn Museums-Kriegsschiffe). Du schaltest sie frei, während du reist; TravStats trägt sie rückwirkend nach, wenn du alte Flüge, Kreuzfahrten oder Aufenthalte importierst.

travstats.local / achievements
TravStats Errungenschaften-Seite: Gesamtpunkte, Freigeschaltet 83 von 276, Fortschritt, Filter nach Bereich Flug, Kreuzfahrt, Unterkunft, Orte und Übergreifend, darunter die Kategorie Sammler mit Logbuch des Kapitäns, Marken-Entdecker und Nicht wählerisch

Die Erfolge-Seite

Gefiltert nach Bereich, Kategorie und Stufe; jedes Abzeichen zeigt seinen Fortschritt. Das Demo-Konto steht bei 83.

Spielt gut mit deinem Stack

Läuft, wo deine anderen Dienste laufen.

Ein einzelnes Docker-Image und ein Postgres-Container. Wenn du Container ausführen kannst, kannst du TravStats ausführen.

  • Docker
  • Proxmox / LXC
  • Unraid
  • TrueNAS
  • Synology
  • CasaOS
  • Cloudflare Tunnel

Oder jede Linux-Maschine mit Docker. Das Wiki hat Setup-Notizen für jede Plattform.

  • ~10 Minuten Setup
  • Läuft auf einem Raspberry Pi 4 oder jedem NAS
  • Niemals ein Cloud-Konto

Bereit, dein Logbuch zu starten?

Das Setup dauert etwa zehn Minuten. Das Wiki führt dich durch jeden Schritt.

Loslegen

Häufig gefragt

Die Fragen, die jeder Self-Hoster zuerst stellt.

Werden meine Daten irgendwohin gesendet?

Nichts ohne dein Zutun. TravStats liest Buchungen, speichert Daten und rendert Karten auf dem Server, auf dem du es betreibst. Kein Cloud-Konto, keine Analytics; die anonyme Nutzungsstatistik ist opt-in und lässt sich abschalten. Standardmäßig ausgehend sind drei Dinge: das Laden von Map-Tiles von OpenStreetMap-kompatiblen Tile-Servern (selbst hostbar), Airline-Logos von einem öffentlichen Logo-Dienst, der dafür nur den Airline-Code erfährt (ohne Internet fehlt das Logo, sonst nichts), und alle sechs Stunden eine Anfrage an GitHub, ob eine neue Version erschienen ist (schlägt offline still fehl). Optional und je nach Konfiguration kommen dazu: Wechselkurse von der Europäischen Zentralbank und ein freier Kursdatensatz für Währungen, die die EZB nicht führt (abschaltbar); Geocoding, wenn du Adressen aus einer Nadel ableiten lässt; Flugdaten-APIs, wenn du Schlüssel einträgst; und Ollama, wenn es auf einem anderen Rechner läuft.

Kann ich TravStats offline betreiben?

Ja. Mit einem selbst gehosteten Tile-Server (oder vorgecachten Map-Tiles) und ohne konfigurierte Zusatzdienste hat TravStats keine Abhängigkeit zu externen Diensten. Karte und Globus funktionieren air-gapped; Beträge in Fremdwährung bleiben dann in ihrer Währung stehen und werden als „kein Kurs“ markiert, statt geraten zu werden.

Was passiert, wenn das Projekt TravStats aufgegeben wird?

Deine Daten liegen in einer Postgres-Datenbank in einem Docker-Volume auf Hardware, die dir gehört. Daran ändert sich nichts, wenn das Projekt verstummt. Das Schema ist dokumentiert; ein vollständiges Backup und der Tabellen-Export legen dir jederzeit jeden Flug, jede Kreuzfahrt und jeden Aufenthalt in ein portables Format.

Brauche ich eine öffentliche Domain oder eine statische IP?

Nein. TravStats läuft am liebsten unter http://travstats.lan:3010 in deinem lokalen Netzwerk. Wenn du HTTPS oder Remote-Zugriff willst, sind ein Cloudflare-Tunnel oder Tailscale die freundlichste Option — beide funktionieren ohne offene Ports.

Wie viel Festplattenplatz frisst das nach Jahren?

Wenig. Ein Flug-Datensatz ist ein paar kB groß; selbst tausende Flüge bleiben deutlich unter 100 MB Datenbank. Das Docker-Image selbst ist rund 200 MB. Nur Fotos, die du zu Reisen, Hotels oder Orten hochlädst, kommen als Dateien im Datenvolume dazu — so groß, wie du sie machst.

Kann ich aus FlightDiary, OpenFlights oder einer CSV importieren?

Ja. TravStats bringt drei dedizierte Importer mit: einen Flightradar24-Importer für den unveränderten my.flightradar24.com-CSV-Export, einen Universal-CSV-Wizard, der Spalten automatisch erkennt (OpenFlights, FlightDiary, eigene Spreadsheets) und eine Vorschau vor dem Commit zeigt, plus den Tabellen-Export des ganzen Logbuchs, der wieder zurückkommt. Jeder Import lässt sich als Ganzes zurücknehmen. Details im Benutzerhandbuch → Import & Export und unter Tabelle; FlightDiary-Spalten-Mapping auf der Vergleichsseite.

Gibt es eine iOS- oder Android-App?

Eine Begleit-App, TravStats Companion, ist in Erprobung. Die Kopplung eines Telefons mit deiner Instanz liegt hinter dem Beta-Schalter, der standardmäßig aus ist; einen Store-Eintrag gibt es nicht. Das Web-UI ist vollständig responsive und läuft gut auf dem Smartphone; ein Home-Screen-Icon lässt es sich nativ anfühlen.

Dokumentation

Alles, was du brauchst, im Wiki.

Vom ersten docker compose up bis zur API — die komplette Doku ist Teil des Projekts. Open Source, versioniert, ohne Tracking.

Komplette Übersicht im Wiki — durchsuchbar, mit Sidebar und Volltextsuche.