FSCash/README.md
fds2610-bot 97c7fd73e0 README auf V.2.1 versioniert, Deploy-Skript und Migrationssystem dokumentiert
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-23 15:22:16 +02:00

4.3 KiB

FSCash

Dokumentiere Ausgaben on-the-go als Webapp & behalte den Überblick über Dein Aktiendepot

ToDo

  • Zusammenfassen von mehreren Einträgen zu einer Aktie
  • Prüfen ob APIKEYS leer sind und ggfs die Aktualisierung ausblenden

V.2.1

  • update.sh zum Deployen auf einen Zielserver: prüft PHP-Syntax, kopiert den aktuellen git-Stand ins Webroot (ohne die produktive config.php zu überschreiben) und wendet danach ausstehende Datenbank-Migrationen an.
  • neues Verzeichnis migrations/ mit versioniertem Migrationssystem: nummerierte .sql-Dateien werden über eine schema_migrations-Tabelle nachverfolgt und jeweils nur einmal angewendet (siehe migrations/README.md für die Konvention).
  • Platzhalter in update.sh für einen automatischen Testlauf, sobald Tests existieren.

V.2.0

  • neue Haupt-Funktion: Aktien zeigt eine Liste mit gespeicherten, zu beobachtenden Aktien
  • Die Tabelle errechnet automatisch den aktuellen Gewinn oder Verluststand jeder Aktieneintragung
  • neue Aktie hinzufügen mit Kaufdatum und Kaufpreis, wird je Benutzer separat hinterlegt (user_id)
  • es KANN eine ISIN oder WKN eingetragen werden
  • Beim Abruf von aktuellen Kursdaten muss vorher ein API Key von https://www.alphavantage.co/support/#api-key beantragt werden.
  • Suchen von Symbolen passend zur ISIN geht über einen API Key von https://www.openfigi.com/user/signup
  • Alternativ kann auch nach dem Aktiennamen bei alphavantage gesucht werden - dafür muss man auf den Namen klicken
  • Aktien können geändert und gelöscht werden.

V.1.2

  • Einträge löschen als Button im Editier-Fenster (UX dient der Prävention versehentlichen löschens auf der Startseite)

V.1.1

Admin-Funktion:

  • in der config.php kann vorkonfiguriert werden, welchen User_ids erlaubt ist, weitere User anzulegen.

Auswertungen:

  • CSV Export des ausgewählten Monats in der Kategorieübersicht
  • Monatssumme je Kategorie
    • Filter monatsweise
    • monate durchblättern zurück und vor, defaut aktueller Monat
  • Monatssumme je Person
    • Haken, welche Kategorieen eingeschlossen werden
    • Filter monatssummen
    • monate durchblättern zurück und vor, defaut aktueller Monat

V.1.0

Das erste Release enthält:

  • mariadb setup
  • apache2 setup
  • Auswahl des UI frameworks
  • login
  • Anzeige bestehender Ausgaben des aktuellen Monats
  • "+" Button zum Aufruf der Eingabemaske
  • Eingabemaske für Ausgaben
  • Speichern der Ausgaben in mariadb

Eingabe:

  • Betrag
  • Personn derzeit individuell direkt über die Mariadb Tabelle individualiserbar
  • für wen (Person1, Person2) jeweils mit Haken
  • Kategorie, derzeit individuell direkt über die Mariadb Tabelle individualiserbar
    • Einkaufen
    • Essengehen
    • Freizeit
    • PuFra
    • Urlaub gemeinsam
    • Urlaub Pössi
    • Barausgaben
  • Datum ohne Uhrzeit, default heute, wählbar via Picker
  • Zahlungsmittel, derzeit individuell direkt über die Mariadb Tabelle individualiserbar
    • Bar
    • Karte
    • Paypal
  • nicht löschbar!
  • alles MUSS-Felder

Ausgabe

  • Anzeige aller Ausgaben des aktuellen Monats
  • "+" Symbol für neue Ausgabe

Weiteres

  • Login/User aktiv halten
  • Datenspeicher MariaDB
  • Strato-Server
  • Kategorieanzeige in Übersicht durch Strings ersetzen
  • Übersicht rückwärts sortiert neu -> alt
  • Betrag deutsche Zahlen und rechtsbündig
  • Kommentarfeld freitext drei Zeilen

Installationshinweise:

  1. webserver & DB server aufsetzen
  2. init.sql script als berechtigter DB user laufen lassen (meist root), der Datenbanken anlegen und Berechtigungen setzen kann.
  3. html Ordner ins webroot kopieren
  4. config_sample.php in config.php umbenennen und DB credentials setzen
  5. webroot (z.B. http://localhost/) aufrufen und mit user test / test123 einloggen.
  6. obige Schritte sind nur das Nötigste, um die Funktionalität herzustellen. Insbesondere bei Zugriffsmöglichkeiten aus dem Internet ist es wichtig, https Protokolle, vpns und/oder ggfs zusätzliche Sicherungsmassnahmen (hardening) zu ergreifen.

Ausserdem solltet Ihr User registrieren und ggfs. die Kategorien anpassen.

Das sollte alles sein. Bitte erstellt ein Bug-Ticket, wenn ich etwas übersehen habe. Gerne könnt Ihr auch Pull-Requests erstellen.