Przejdź do treści

👨‍💻 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

Moduły

Standardy Kodu

API Reference

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

  1. Przeczytaj Struktura Modułu
  2. Przeczytaj Tworzenie Modułu
  3. Utwórz moduł zgodnie z wytycznymi
  4. 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_lazy dla 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