👨💻 Dokumentacja Developerska - Panel Księgowy¶
Witaj w dokumentacji developerskiej Panel Księgowy! Ten przewodnik pomoże Ci zrozumieć architekturę systemu, standardy kodu i procesy rozwoju.
🎯 Dla kogo jest ta dokumentacja?¶
Ta dokumentacja jest przeznaczona dla: - Developerów - Osób rozwijających system - Architektów - Osób projektujących nowe funkcje - DevOps - Osób odpowiedzialnych za deployment - Code Reviewers - Osób sprawdzających kod
📚 Struktura dokumentacji¶
Architektura¶
- Przegląd - Ogólny przegląd architektury systemu
- Multi-tenancy - Architektura wielodostępowa
- Bazy Danych - Struktura bazy danych i modele
- API - Architektura API
Moduły¶
- Struktura Modułu - Wymagana struktura modułu
- Tworzenie Modułu - Krok po kroku tworzenie nowego modułu
- CRM - Szczegóły modułu CRM
- Kontrahenci - Szczegóły modułu Kontrahenci
- Tasks - Szczegóły modułu Tasks
- Automation - Szczegóły modułu Automation
Standardy Kodu¶
- Python/Django - Standardy kodu Python i Django
- JavaScript/TypeScript - Standardy kodu JavaScript/TypeScript
- HTML/CSS - Standardy HTML/CSS i szablonów
- Testy - Standardy testowania
API Reference¶
- REST API - Dokumentacja REST API
- Smart API - Dokumentacja Smart API
- Webhooks - Dokumentacja webhooków
Deployment¶
- Docker - Deployment z Dockerem
- Production - Deployment produkcyjny
- CI/CD - Continuous Integration/Deployment
🚀 Szybki start¶
1. Środowisko deweloperskie¶
# Sklonuj repozytorium
git clone <repository-url>
cd panel_ksiegowy_app
# Uruchom Docker Compose
docker-compose up -d
# Zastosuj migracje
docker-compose exec web python manage.py migrate
# Utwórz superusera
docker-compose exec web python manage.py createsuperuser
2. Struktura projektu¶
panel_ksiegowy_app/
├── apps/ # Aplikacje Django
│ ├── crm/ # Moduł CRM
│ ├── contractors/ # Moduł Kontrahenci
│ ├── tasks/ # Moduł Tasks
│ └── ...
├── templates/ # Szablony Django
├── assets/ # Pliki statyczne (JS/CSS)
├── docs/ # Dokumentacja
├── docker-compose.yml # Konfiguracja Docker
└── requirements.txt # Zależności Python
3. Tworzenie nowego modułu¶
- Przeczytaj Struktura Modułu
- Przeczytaj Tworzenie Modułu
- Utwórz moduł zgodnie z wytycznymi
- Dodaj do
built-features-registry.mdc
🏗️ Architektura systemu¶
Tech Stack¶
- Backend: Django 5.2 + Python 3.12
- Frontend: HTMX + Alpine.js + Tailwind CSS 4 + DaisyUI
- Database: PostgreSQL
- Cache: Redis
- Task Queue: Celery
- Build: Vite
- Containerization: Docker
Kluczowe koncepcje¶
- Multi-tenancy - Każdy zespół ma izolowaną bazę danych
- Team-based URLs - Wszystkie URL-e są w kontekście zespołu
- BaseTeamModel - Wszystkie modele biznesowe dziedziczą po BaseTeamModel
- Function-based views - Preferowane nad class-based views
- HTMX - Interakcje z backendem bez JavaScript
- Alpine.js - Interakcje po stronie klienta
📋 Standardy kodu¶
Python/Django¶
- PEP 8 - Z limitem 120 znaków na linię
- Type hints - Gdy to możliwe
- Function-based views - Preferowane
- BaseTeamModel - Dla wszystkich modeli biznesowych
- Translation -
gettext_lazydla wszystkich tekstów użytkownika
JavaScript¶
- ES6+ - Nowoczesny JavaScript
- Alpine.js - Dla interakcji po stronie klienta
- HTMX - Dla interakcji z backendem
- TypeScript - Gdy to możliwe
HTML/CSS¶
- Tailwind CSS 4 - Framework CSS
- DaisyUI - Komponenty UI
- Dark mode - Pełne wsparcie
- Responsive - Mobile-first
🧪 Testowanie¶
- pytest - Framework testowy
- Factory Boy - Fixtures
- Coverage - Pokrycie kodu
- Minimum 80% - Wymagane pokrycie
📚 Więcej informacji¶
Architektura¶
Moduły¶
Standardy¶
API¶
Deployment¶
Ostatnia aktualizacja: 2025-11-29
Wersja dokumentacji: 1.0