KPR
ÜberDienstleistungenPortfolioStartseite
KPR
Loading theme toggle...
Zurück zu Projekten
Loading...

Expense Tracker

Jahr
Mai 2025
Kategorie
Cloud-bereitgestellte Webanwendung
Zurück zu Projekten

©Copyright 2026 kamesprojects

Expense Tracker cover
Cloud-bereitgestellte WebanwendungMai 2025

Expense Tracker

Schulprojekt: Echtzeit-Ausgabenverfolgung, bereitgestellt auf Azure Kubernetes Service (AKS)

Expense Tracker ist eine Echtzeit-Webanwendung zur Verwaltung von Ausgaben mit Live-Synchronisation über mehrere Clients hinweg. Es verwendet Socket.IO für sofortige Updates, speichert Daten in MySQL und wird auf Microsoft Azure mit Kubernetes (AKS) mit NGINX Ingress und HTTPS über cert-manager und Let's Encrypt bereitgestellt.

Tech-Stack

  • Microsoft Azure
  • AKS
  • ACR
  • Kubernetes
  • Docker
  • NGINX Ingress
  • cert-manager
  • Let's Encrypt
  • Python
  • Flask
  • Flask-WTF
  • Flask-SocketIO
  • Socket.IO
  • MySQL
  • Jinja2
  • Tailwind CSS
  • JavaScript
Expense Tracker preview

Projektdetails

Links

GitHub (bildungsorientiert):
https://github.com/kamesprojects/expense-tracker-azure-k8s

Überblick

Benutzer können Transaktionen mit Titel, Betrag, Notiz und der IP-Adresse des Clients hinzufügen, bearbeiten und löschen. Aktualisierungen werden in Echtzeit an alle verbundenen Clients über Socket.IO weitergegeben, während die vollständige Transaktionshistorie in einer MySQL-Datenbank gespeichert wird.

Architektur

Die Anwendung ist ein containerisierter Flask-System, der auf AKS bereitgestellt wird. Die Flask-App läuft als Kubernetes Deployment, während MySQL als StatefulSet mit einem PersistentVolumeClaim für dauerhafte Speicherung läuft. Der Cluster verwendet NGINX Ingress, um die App zu exponieren, und cert-manager + Let's Encrypt, um TLS-Zertifikate zu automatisieren. Container-Images werden im Azure Container Registry (ACR) gespeichert.

Frontend

Serverseitig gerendertes HTML (Jinja2-Vorlagen) mit Tailwind CSS stilisiert und mit JavaScript erweitert. Die Benutzeroberfläche verwendet Socket.IO, um Echtzeit-Updates zu empfangen und zu senden, und umfasst clientseitige Validierung und interaktive Modals.

Backend

Ein Flask-Backend bietet serverseitiges Rendering und REST-Endpunkte für Transaktionsoperationen sowie Flask-SocketIO für Echtzeit-Synchronisation. Transaktionsdaten werden in MySQL gespeichert und die Gesamtausgaben werden über einen dedizierten Endpunkt berechnet.

Funktionen

CRUD-Transaktionsverwaltung, Echtzeit-Multi-Client-Updates über Socket.IO, Gesamtausgabenberechnung, clientseitige Tabellensuchfilter, IP-basierte Transaktionsfilterung, Datumssortierung (aufsteigend/absteigend), Toast-Benachrichtigungen für Echtzeit-Aktionsfeedback und neue Zeilen-Highlight-Animation.

Bereitstellung

Bereitgestellt auf Microsoft Azure mit AKS und ACR. Zu den Kubernetes-Ressourcen gehören ein Deployment (Flask), StatefulSet + PVC (MySQL), Services, Secrets/ConfigMaps (Env + init.sql) und NGINX Ingress mit Staging/Production TLS-Manifesten. Der Bereitstellungsprozess wird durch Skripte automatisiert, die Bilder erstellen/pushen und Manifeste anwenden.

AI-Verarbeitung

KI-Tools wurden verwendet, um Sicherheitsmuster zu generieren, Kubernetes/AKS-Konzepte zu verstehen und Bereitstellungsprobleme zu beheben.

Sicherheit

CSRF-Schutz durch Flask-WTF/CSRFProtect, serverseitige Validierung mit WTForms, clientseitige Eingabeprüfungen, grundlegende Eingabebereinigung zur Reduzierung von Injektions-/XSS-Risiken und XSS-Minderung durch Jinja2-Autoescaping. HTTPS wird durch cert-manager und Let's Encrypt aktiviert.

Testen

Manuelles Testen mit Fokus auf CRUD-Abläufe, Echtzeit-Synchronisation zwischen Clients, Datenbankpersistenz und HTTPS-Ingress-Verhalten.

Zusammenarbeit

Einzelprojekt (von Anfang bis Ende erstellt)

Gallery

Project image lightbox

kontakt

Zusätzliche Informationen

Möchten Sie weitere Details teilen?

Kontaktiere mich

Antworten innerhalb von 24–48 Stunden.

services

  • Web- und mobile Anwendungsentwicklung
  • Interne Systeme und Dashboards
  • Automatisierungen und LLM-Workflows
  • Datenmanagement und Cloud-Infrastruktur
  • Sicherheit
  • Videoproduktion

Portfolio

  • CityEventScout
  • Fintech-App
  • Neurosphäre
  • Ausgaben-Tracker
  • Trip Guardian

Ressourcen

  • GitHub
  • YouTube
  • FAQs

Navigation

  • Über
  • Dienstleistungen
  • Portfolio
  • Startseite
GitHubLinkedInDevpostEmailYouTubeFAQs
Version 1.2.2Admin