TutorHub
System zarządzania szkołą korepetycji B2B. Django + PostgreSQL + Redis + Celery. 4 role użytkowników, automatyczne fakturowanie, śledzenie obecności, kalendarz lekcji, portal rodzica, komunikator.

TutorHub ("Na Piątkę") to kompleksowy system zarządzania dla szkół korepetycji w Polsce. Zbudowany jako monolit Django, zastępuje obieg pracy oparty na Excelu automatycznym planowaniem, fakturowaniem, śledzeniem obecności i komunikacją wielorolową.
Problem
Szkoła korepetycji z ponad 200 aktywnymi uczniami zarządzała wszystkim w Excelu: dane uczniów, grafiki nauczycieli, śledzenie lekcji, statusy płatności i komunikacja z rodzicami. Właściciel poświęcał ponad 10 godzin tygodniowo na zadania administracyjne, które powinny być zautomatyzowane.
Podwójnie zarezerwowani nauczyciele, niezauważone zaległości w płatnościach przez tygodnie i brak możliwości generowania raportów bez ręcznej agregacji danych.
Rozwiązanie
Dedykowana platforma Django z 17 połączonymi modułami, 4 rolami użytkowników (Admin, Korepetytor, Uczeń, Rodzic) i automatycznymi zadaniami w tle przez Celery.
Moduły

Dashboard
Admin overview with key stats: students, tutors, upcoming lessons, pending invoices, and revenue tracking.
Role użytkowników i kontrola dostępu
- Admin -- pełny dostęp do systemu, dashboard z przychodami/statystykami, ustawienia, logi audytu
- Korepetytor -- zarządzanie lekcjami, szybkie oznaczanie obecności, lista uczniów, widok zarobków
- Uczeń -- osobisty dashboard, kalendarz lekcji, wnioski o odwołanie, śledzenie postępów
- Rodzic -- konfigurowalny portal (tylko podgląd lub pełny dostęp), przeglądanie faktur, komunikacja z korepetytorami
Zautomatyzowane procesy
Zadania w tle zasilane przez Celery Beat i Redis:
- Miesięczne fakturowanie -- faktury generowane automatycznie 25. dnia każdego miesiąca
- Wykrywanie zaległości -- codzienna kontrola o 8:00, automatyczna aktualizacja statusów
- Przypomnienia o płatności -- email 7 dni przed terminem
- Wygaśnięcie lekcji zastępczych -- automatyczne czyszczenie po konfigurowalnym okresie (domyślnie 30 dni)
- Przypomnienia o lekcjach -- powiadomienia 24 godziny przed zaplanowaną lekcją
Architektura techniczna
- Django 5.1 z Python 3.11+ -- CBV, custom managery, mixiny oparte na rolach
- PostgreSQL 17 -- schemat relacyjny z kluczami złożonymi dla slotów grafiku, ograniczenia na poziomie bazy zapobiegające podwójnej rezerwacji
- Redis 7 + Celery 5.4 -- kolejka zadań dla fakturowania, powiadomień i zadań w tle
- HTMX 1.21 -- reaktywny UI bez przeładowań strony, częściowe renderowanie szablonów
- Tailwind CSS + DaisyUI -- stylowanie komponentowe z obsługą motywów
- Gunicorn + WhiteNoise -- serwowanie produkcyjne z optymalizacją plików statycznych
- Docker Compose -- PostgreSQL, Redis i Adminer w kontenerach
Bezpieczeństwo i zgodność
- Gotowość na RODO z archiwizacją i anonimizacją użytkowników
- Pełna ścieżka audytu -- każda operacja CRUD logowana z użytkownikiem, IP i timestampem
- Proces weryfikacji emaila
- Autentykacja sesyjna z 2-godzinnym timeoutem
- Kontrola dostępu oparta na rolach na każdym widoku
Stack
- Django 5.1 + Python 3.11
- PostgreSQL 17
- Redis 7 + Celery 5.4
- HTMX + Tailwind CSS + DaisyUI
- FullCalendar (planowanie)
- ReportLab + PyMuPDF (generowanie PDF)
- Docker Compose
- Gunicorn + WhiteNoise
Wyniki
- 10h do <1h tygodniowo -- redukcja czasu administracji
- Zero incydentów podwójnej rezerwacji od wdrożenia
- 3 dni/miesiąc zaoszczędzone na ręcznym fakturowaniu
- 4 role użytkowników z granularną kontrolą dostępu
- 17 aplikacji Django zasilających cały system
- Obsługuje ponad 200 jednoczesnych użytkowników