KPR
O násSlužbyPortfólioDomov
KPR
Loading theme toggle...
Späť na projekty
Loading...

Expense Tracker

Rok
Máj, 2025
Kategória
Cloudová webová aplikácia
Späť na projekty

©Copyright 2026 kamesprojects

Expense Tracker cover
Cloudová webová aplikáciaMáj, 2025

Expense Tracker

Školský projekt: real-time sledovanie výdavkov nasadené na Azure Kubernetes Service (AKS)

Expense Tracker je webová aplikácia na správu výdavkov s real-time synchronizáciou medzi viacerými používateľmi. Využíva Socket.IO na okamžité aktualizácie, ukladá dáta do MySQL a je nasadená na Microsoft Azure prostredníctvom Kubernetes (AKS) s NGINX Ingress a HTTPS cez cert-manager a Let's Encrypt.

Technológie

  • 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

Detaily projektu

Odkazy

GitHub (edukačný projekt):
https://github.com/kamesprojects/expense-tracker-azure-k8s

Prehľad

Používatelia môžu pridávať, upravovať a mazať transakcie vrátane názvu, sumy, poznámky a IP adresy klienta. Zmeny sa okamžite synchronizujú medzi všetkými pripojenými klientmi, pričom kompletná história transakcií je perzistentne uložená v databáze MySQL.

Architektúra

Aplikácia je kontajnerizovaný Flask systém nasadený na AKS. Flask beží ako Kubernetes Deployment, MySQL ako StatefulSet s PersistentVolumeClaim pre trvalé úložisko. NGINX Ingress zabezpečuje verejný prístup a cert-manager spolu s Let's Encrypt automatizuje TLS certifikáty. Docker image sú uložené v Azure Container Registry (ACR).

Frontend

Server-side renderované HTML (Jinja2 templates) štýlované pomocou Tailwind CSS a doplnené o JavaScript. UI využíva Socket.IO na prijímanie a vysielanie real-time aktualizácií a obsahuje client-side validáciu aj interaktívne modálne okná.

Backend

Backend je postavený na Flask a poskytuje server-side rendering aj REST endpointy pre prácu s transakciami. Flask-SocketIO zabezpečuje real-time synchronizáciu. Dáta sú uložené v MySQL a celkové výdavky sa počítajú cez samostatný endpoint.

Funkcie

CRUD správa transakcií, real-time synchronizácia cez Socket.IO, výpočet celkových výdavkov, client-side vyhľadávanie v tabuľke, filtrovanie podľa IP adresy, triedenie podľa dátumu (vzostupne/zostupne), toast notifikácie a vizuálne zvýraznenie nových záznamov.

Nasadenie

Nasadenie prebieha na Microsoft Azure s využitím AKS a ACR. Kubernetes konfigurácia zahŕňa Deployment (Flask), StatefulSet + PVC (MySQL), Services, Secrets/ConfigMaps (env + init.sql) a NGINX Ingress s TLS konfiguráciou pre staging aj production. Build a deploy proces je automatizovaný skriptmi.

Spracovanie AI

AI nástroje boli využité pri návrhu bezpečnostných patternov, pochopení Kubernetes/AKS konceptov a riešení problémov počas nasadzovania.

Bezpečnosť

CSRF ochrana cez Flask-WTF/CSRFProtect, server-side validácia pomocou WTForms, základná sanitizácia vstupov proti injection/XSS, ochrana cez Jinja2 autoescaping a HTTPS zabezpečené pomocou cert-manager a Let's Encrypt.

Testovanie

Manuálne testovanie zamerané na CRUD operácie, real-time synchronizáciu medzi klientmi, perzistenciu dát v databáze a správne fungovanie HTTPS ingress vrstvy.

Spolupráca

Samostatný projekt realizovaný end-to-end.

Gallery

Project image lightbox

kontakt

Ďalšie informácie

Chceli by ste zdieľať viac podrobností?

Kontaktuj ma

Odpovede do 24-48 hodín.

services

  • Vývoj webových a mobilných aplikácií
  • Interné systémy a dashboardy
  • Automatizácie a LLM workflow
  • Správa dát a cloudová infraštruktúra
  • Bezpečnosť
  • Video produkcia

Portfólio

  • CityEventScout
  • Fintech Aplikácia
  • Neurosphere
  • Sledovač výdavkov
  • Trip Guardian

zdroje

  • GitHub
  • YouTube
  • FAQs

navigácia

  • O nás
  • Služby
  • Portfólio
  • Domov
GitHubLinkedInDevpostEmailYouTubeFAQs
Version 1.2.2Admin