- KAŽDÝ Python příkaz musí běžet ve venv!
- Aktivace:
.\venv\Scripts\Activate.ps1(Windows PowerShell) - Kontrola:
where pythonnebopython --version
- JEN přes aktivovaný venv!
- Nikdy globálně!
- Příkaz:
.\venv\Scripts\Activate.ps1; pip install -r requirements.txt
- Vždy:
.\venv\Scripts\Activate.ps1; python src/main.py
- SQLite (výchozí) + SQLAlchemy ORM
- Možnost migrace na PostgreSQL
- Žádné ruční SQL queries
- Konfigurace v
.env
- Hierarchická: Activity → Many TimeSessions
- Jeden úkol může mít desítky časových záznamů
- Podpora PAUZA s elapsed time tracking
- ENUM typy pro ObsahMereni a RoutineType
- CustomTkinter (dark mode)
- Responzivní design pro různá rozlišení
- 2-sloupcový layout (PROJECT_TASKS 80% + ROUTINES 20%) + LogPanel dole
- Desktop aplikace (ne web, ne mobile)
- Nikdy nepoužívej
print()— vždyfrom src.utils.app_logger import get_logger - Logger je singleton — volej
get_logger()na vrcholu každého modulu - Úrovně:
logger.info()pro normální tok,logger.warning()pro validační chyby,logger.error()pro výjimky - Log soubor:
data/app.log(rotující, max 1 MB)
- Po každé implementované funkci aktualizuj
MVP_STATUS.md— přesuň hotové položky do sekce CO JE HOTOVO, aktualizuj záhlaví KDE JSME TEĎ - Hotové TODO položky v backlogu přeškrtni (
~~text~~) nebo odstraň, nikdy je nesmazávej bez záznamu PROJECT_CONFIG.mdaktualizuj při změně dev pravidel nebo nové infrastrukturní vrstvyREADME.mdaktualizuj při změně schématu DB nebo přidání nové funkční oblasti- Toto se provádí PŘED každým commitem, ne po — aktualizace .md souborů je součástí každého úkolu
- KROK 0: Základní setup
- KROK 1: Návrh DB schématu
- KROK 2: MVP aplikace funkční
- Multi-user podpora
- ROUTINES support
- Responzivní design
- Instrukce pro AI asistenta (
.github/instructions/) - Logging —
src/utils/app_logger.py+LogPanelv GUI - P1-1 Validace formulářů —
NewProjectTaskDialog, TMA reopen logika - P1-2 Potvrzovací dialogy —
ConfirmDialog - P1-4 Pytest testy —
tests/test_crud.py, 16 testů - GUI-1 Toolbar — datum, uživatel, přepínání uživatele za běhu
- GUI-2 Autor v TaskCard —
👤v záhlaví karty + u každé session - GUI-3 Panel „📋 Dnes zadáno" — dnešní rutiny v pravém panelu, refresh po každé akci i po TrackingDialog
- FIX — řazení „Poslední fáze" dle
start_time(ne pořadí v listu) - FIX —
invalid command nameCTk šum odstraněn (make_ctk_error_handler+ zrušení pending callbacků předroot.destroy()) - P2-1 Editace aktivity —
EditActivityDialog+crud.update_activity() - P2-2 Editace poznámek session —
InputDialoginitial_value +crud.update_time_session_notes() - P2-3 Mazání session —
crud.delete_time_session()+ tlačítko v TaskCard - P2-4 Mazání aktivity —
crud.delete_activity()(cascade) + tlačítko v TaskCard - P3–P4 viz MVP_STATUS.md backlog
| Soubor | Obsah |
|---|---|
| README.md | Přehled projektu, schéma DB, workflow |
| QUICKSTART.md | Jak spustit, seed data, ovládání |
| MVP_STATUS.md | Aktuální stav + TODO backlog s prioritami |
| PROJECT_CONFIG.md | Tento soubor — dev pravidla a příkazy |
| .github/instructions/ | Konvence pro AI asistenta (architektura, DB, GUI) |
| src/utils/app_logger.py | Singleton logger — použij get_logger() |
| data/app.log | Rotující log soubor (runtime, není v gitu) |