>_ DevTrendsde

Sprache

Start

Sprachen

Bereiche

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embedded Sicherheit
Svelte

Autokosten organisieren mit Tracktor

Ich hatte jahrelang Benzinquittungen im Handschuhfach, verstreute Ölwechselnotizen in meinen Telefonnotizen, und meine OSAGO-Police ging immer irgendwo in den Tiefen meiner E-Mails verloren. Kommt Ihnen das bekannt vor? Wenn Sie zwei Autos in der Familie oder zusätzlich ein Motorrad haben, wird die Übersicht über geplante Wartungen und Versicherungsfristen zu einer eigenen Aufgabe. Die meisten mobilen Apps zur Fahrzeugverfolgung sind entweder voll mit Werbung, erfordern ein kostenpflichtiges Abonnement oder speichern Ihre Daten auf den Servern anderer.

Kürzlich bin ich auf das Projekt Tracktor auf GitHub gestoßen. Es ist ein selbst gehosteter Garagenservice, der Betankungen, Reparaturen, Inspektionen, Versicherungen und Erinnerungen zusammenführt. Ich habe mich entschieden, es auf meinem Heimserver bereitzustellen und zu sehen, wie komfortabel es im Alltag ist.

Tracktor Demo

Was der Service kann

Der Projektentwickler hat sich auf die grundlegenden Dinge konzentriert, die jeder Autobesitzer braucht, ohne überflüssigen Schnickschnack.

Die Hauptseite begrüßt Sie mit einem anpassbaren Dashboard. Widgets können verschoben werden, um das Wichtigste hervorzuheben: aktuelle Ausgaben, Kraftstoffverbrauch oder eine anstehende Wartung.

Mehrere Kernbereiche sind integriert.

Die Garage unterstützt eine beliebige Anzahl von Fahrzeugen. Für jedes Auto oder Motorrad können Sie den Kraftstofftyp, die Basislaufleistung und die Spezifikationen festlegen. Praktisch, wenn die Familie mehrere Autos hat oder Sie Verwandten helfen, ihren Fuhrpark im Blick zu behalten.

Die Kraftstoffverfolgung berechnet den durchschnittlichen Kraftstoffverbrauch und Kosten-pro-Kilometer-Trends. Sie geben Liter, Betrag und aktuellen Tachostand ein, und das System erstellt Diagramme und erkennt Anomalien eigenständig. Wenn der Verbrauch plötzlich ansteigt, ist das sofort in den Berichten sichtbar.

Das Serviceprotokoll speichert die Historie von Reparaturen, Verbrauchsmaterialwechseln und geplanten Wartungen. Jeder Eintrag kann mit Kosten und der Laufleistung verknüpft werden, bei der die Arbeit durchgeführt wurde.

Die Dokumentenverwaltung und Erinnerungen bewahren Sie vor abgelaufenen Versicherungen und Inspektionsfristen. Sie geben das Ablaufdatum der Police oder das nächste Bremsflüssigkeitswechselintervall ein, und der Service warnt Sie rechtzeitig vor der Frist.

Die Berichterstattung fasst Ausgaben in übersichtlichen Diagrammen zusammen. Sie sehen sofort, welcher Anteil Ihres Budgets für Benzin gegenüber geplanter Wartung und Versicherung aufgewendet wird.

Die Benutzeroberfläche verfügt über Modul-Umschalter: Wenn Sie keine Umweltzertifikat-Verfolgung oder detaillierte Analysen benötigen, können diese Blöcke in den Einstellungen mit einem einzigen Button deaktiviert werden. Die Oberfläche ist in 11 Sprachen übersetzt, Russisch ist standardmäßig enthalten.

Unter der Haube

Die Projektarchitektur wirkt sauber und modern. Es gibt keine umfangreichen Microservices oder schweren Datenbanken, die Gigabytes an RAM erfordern.

Frontend und Backend sind in SvelteKit mit dem neuen Svelte 5 und Styles in Tailwind CSS geschrieben. Für die Datenspeicherung hat sich der Entwickler für die Kombination aus SQLite und Drizzle ORM entschieden.

Dieser Stack bietet offensichtliche Vorteile:

  1. Minimaler Ressourcenverbrauch. Die App läuft problemlos auf einem alten Raspberry Pi, einer günstigen virtuellen Maschine für ein paar Euro oder in einem Proxmox LXC-Container.
  2. Einfache Backups. Die gesamte Datenbank passt in eine einzelne SQLite-Datei, die einfach zeitgesteuert in ein lokales Archiv oder die Cloud kopiert werden kann.
  3. Schnelle, reaktionsschnelle Oberfläche ohne Verzögerungen beim Navigieren zwischen Bildschirmen.

Es gibt allerdings eine Warnung im Repository: Das Projekt befindet sich in aktiver Entwicklung, daher können Releases Breaking Changes enthalten. Der Autor rät ausdrücklich, vor dem Update regelmäßige Datenbank-Backups einzurichten.

Schneller Docker-Setup

Der schnellste Weg, die App zum Laufen zu bringen, ist das Starten des fertigen Docker-Images über docker-compose.

Erstellen Sie eine docker-compose.yml-Datei:

services:
  app:
    image: ghcr.io/javedh-dev/tracktor:latest
    container_name: tracktor-app
    restart: always
    ports:
      - '3333:3000'
    volumes:
      - tracktor-data:/data

volumes:
  tracktor-data:

Starten Sie den Container mit dem Befehl:

docker compose up -d

Nach dem Start ist die Weboberfläche unter http://localhost:3333 oder über die IP-Adresse Ihres Servers im lokalen Netzwerk verfügbar.

Die Authentifizierung verwendet die klassische Kombination aus Benutzername und Passwort mit Sessions. Wenn Sie den Zugriff extern freigeben möchten, reicht es aus, die App hinter einem Reverse Proxy wie Nginx, Caddy oder Traefik mit einem HTTPS-Zertifikat zu platzieren.

Für wen ist das Projekt interessant

Tracktor eignet sich gut für alle, die ihre persönlichen Daten unter eigener Kontrolle behalten und Autonomie schätzen.

Es löst diese Aufgaben gut:

  • Besitzer mehrerer Autos oder Motorräder, die es leid sind, mit Serviceheften und Quittungen zu jonglieren.
  • Heimhosting-Enthusiasten, die einen leichtgewichtigen Ersatz für kommerzielle Ausgabenverfolgungsdienste suchen.
  • Kleine Familienflotten, bei denen transparente Übersicht über die gesamten Transportkosten benötigt wird.

Wenn Sie schon immer Ihre Servicehistorie des Fahrzeugs organisieren und aufhören wollten, Wechselintervalle von Zündkerzen und Versicherungsverlängerungen im Kopf zu behalten, ist das Projekt definitiv einen Test wert. Schauen Sie sich das Tracktor-Repository an, starten Sie einen Container und überzeugen Sie sich selbst.