Moderna web aplikacija za praćenje troškova izrađena pomoću Flask frameworka, prilagođena potrebama IT paušalnog obrta u Hrvatskoj. Aplikacija omogućuje kompletno upravljanje troškovima s naprednim funkcionalnostima za analizu i vizualizaciju podataka.
- 📊 Kompletno praćenje troškova - dodavanje, uređivanje, brisanje s detaljnim opisima
- 🏷️ Upravljanje kategorijama - prilagođene kategorije za IT obrt (hardver, softver, licence, porezi)
- 📈 Napredni izvještaji - interaktivni grafikoni i analitika trendova
- 🔄 Ponavljajući troškovi - označavanje redovitih plaćanja (osiguranje, porezi, pretplate)
- 📃 Paginacija - efikasno pregledavanje velikih količina podataka (10, 25, 50, 100, sve)
- 🔍 Napredni filtri - sortiranje po datumu, iznosu, kategoriji ili ID-u
- 📱 Responzivni dizajn - optimizirano za desktop i mobilne uređaje
- 🐳 Docker podrška - jednostavno pokretanje i deployment
- Backend: Python 3.12, Flask 2.3.3
- Baza podataka: SQLite s PonyORM 0.7.16
- Frontend: HTML5, CSS3, JavaScript (ES6+)
- UI Framework: Bootstrap 5
- Grafikoni: Chart.js
- Containerization: Docker & Docker Compose
- Python 3.12+ ili Docker (ovisno o načinu pokretanja)
# Kloniraj repozitorij
git clone [repository-url]
cd expense_tracker_infsus
# Pokreni s Docker Compose
docker-compose up --buildAplikacija će biti dostupna na http://localhost:5001
git clone [repository-url]
cd expense_tracker_infsuspython -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activatepip install -r requirements.txtpython app.pyexpense_tracker_infsus/
├── 🐳 Docker konfiguracija
│ ├── Dockerfile
│ ├── docker-compose.yml
│ ├── .dockerignore
│ └── requirements.txt
├── 🐍 Backend
│ ├── app.py # Glavna Flask aplikacija
│ └── populate_data.py # Skripta za generiranje test podataka
├── 🎨 Frontend
│ ├── templates/
│ │ ├── layout.html # Osnovni template
│ │ ├── index.html # Dashboard
│ │ ├── expenses.html # Upravljanje troškovima s paginacijom
│ │ ├── categories.html # Upravljanje kategorijama
│ │ └── reports.html # Izvještaji s Chart.js grafovima
│ └── static/
│ └── css/ # Prilagođeni stilovi
├── 💾 Baza podataka
│ └── expense_tracker.sqlite # SQLite baza (auto-generirana)
└── 📄 Dokumentacija
└── README.md
Aplikacija dolazi s unaprijed definiranim kategorijama prilagođenim hrvatskom IT paušalnom obrtu:
- 💊 Zdravstveno osiguranje - HZZO doprinosi (118.67 EUR/mj)
- 👴 Mirovinsko osiguranje - MIO I. stup (107.88 EUR/mj), MIO II. stup (35.96 EUR/mj)
- 💰 Paušalni porez - Mjesečni paušalni porez (59.99 EUR/mj)
- 📜 Licence - Softverske licence i pretplate
- 🏢 Najam - Uredski prostor, hosting, cloud servisi
- 📢 Marketing - Reklame, web stranica, branding
- 💻 Hardver - Računala, oprema, periferali
- 💿 Softver - Aplikacije, alati, subscriptions
- Paginacija: 10, 25, 50, 100 ili prikaži sve troškove
- Sortiranje: po datumu, iznosu, kategoriji ili ID-u
- Filtriranje: po kategorijama s behrenjem trenutnih postavki
- Pie Chart: Raspodjela troškova po kategorijama
- Bar Chart: Usporedba kategorija
- Line Chart: Kretanje troškova kroz vrijeme
- Doughnut Chart: Top 5 kategorija potrošnje
- Comparison Chart: Usporedba trenutnog i prethodnog mjeseca
GET /api/chart-data # Podaci za osnovne grafove
GET /api/time-series-data # Mjesečni trendovi
GET /api/monthly-comparison # Usporedba mjeseci
GET /api/top-categories # Top 5 kategorija
GET /api/expense-summary # Sažetak statistika
# Pokretanje u pozadini
docker-compose up -d --build
# Pregled logova
docker-compose logs -f
# Zaustavljanje
docker-compose down
# Rebuild bez cache
docker-compose build --no-cache
# Pristup containeru
docker-compose exec expense-tracker bashAplikacija automatski generira realne test podatke za IT obrt:
- 6 mjeseci povijesti troškova
- Stvarni iznosi poreza i doprinosa
- Realne cijene hardvera i softvera
- Ponavljajući troškovi (porezi, osiguranja)
- 5001 - Flask aplikacija
- SQLite - Lokalna baza (bez dodatnih portova)