🏗️ Architektura Systemu¶
Ten przewodnik opisuje architekturę systemu Panel Księgowy na wysokim poziomie.
📚 Spis treści¶
- Przegląd - Ogólny przegląd architektury
- Multi-tenancy - Architektura wielodostępowa
- Bazy Danych - Struktura bazy danych
- API - Architektura API
🎯 Kluczowe koncepcje¶
Multi-tenancy¶
System używa virtual tenant isolation - każdy zespół (Team) ma izolowaną bazę danych logicznie, ale fizycznie wszystkie dane są w jednej bazie PostgreSQL z filtrowaniem po team_id.
Team-based URLs¶
Wszystkie URL-e biznesowe są w kontekście zespołu:
BaseTeamModel¶
Wszystkie modele biznesowe dziedziczą po BaseTeamModel, który automatycznie:
- Dodaje pole team (ForeignKey do Team)
- Filtruje zapytania po team
- Zapewnia izolację danych
🏗️ Warstwy architektury¶
Frontend Layer¶
- HTMX - Interakcje z backendem
- Alpine.js - Interakcje po stronie klienta
- Tailwind CSS 4 - Framework CSS
- DaisyUI - Komponenty UI
Application Layer¶
- Django 5.2 - Framework backendowy
- Function-based views - Preferowane nad CBV
- Django ORM - Warstwa dostępu do danych
- Celery - Asynchroniczne zadania
Data Layer¶
- PostgreSQL - Baza danych główna
- Redis - Cache i message broker
- File Storage - Przechowywanie plików
📚 Więcej informacji¶
- Przegląd - Szczegółowy przegląd
- Multi-tenancy - Architektura wielodostępowa
- Bazy Danych - Struktura bazy danych
- API - Architektura API
Ostatnia aktualizacja: 2025-11-29
Wersja dokumentacji: 1.0