hintik/nette-base-project

Base Nette Project

Maintainers

Package info

github.com/hintik-dev/nette-base-project

Type:project

pkg:composer/hintik/nette-base-project

Transparency log

Statistics

Installs: 2

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 2

v1.1.0 2026-07-24 21:00 UTC

This package is auto-updated.

Last update: 2026-07-25 22:17:00 UTC


README

Skeleton Nette aplikace připravený pro okamžitý vývoj. Obsahuje předkonfigurované prostředí, Docker setup, třívrstvou MVP architekturu a sadu nástrojů pro zajištění kvality kódu.

Funkce

  • Docker prostředí — PHP 8.5 + Apache, MariaDB, phpMyAdmin, Node.js
  • Třívrstvá MVP architektura — oddělení prezentační, doménové a datové vrstvy
  • Modulární struktura — samostatný Admin a Web modul
  • Admin design systém — AdminLTE 4 + Bootstrap 5 (layout, sidebar, přihlášení)
  • DataGrid — vlastní vrstva nad ublaboo/datagrid s jednotným vzhledem a znovupoužitelnou BaseGridComponent
  • Job systém — DB-driven plánované úlohy (contributte/scheduler) s historií běhů a detailním logováním
  • Jazykové mutace — contributte/translation pro texty generované knihovnami (např. DataGrid)
  • Autentizace a autorizace — přihlašování uživatelů, role-based access control
  • Flash zprávy — typované flashSuccess/flashError/flashWarning/flashInfo v presenterech i komponentách
  • Databázové migrace — Phinx pro verzování databázové struktury
  • CLI příkazy — Symfony Console pro konzolové operace
  • Frontend build — Vite pro moderní správu CSS a JS assetů
  • Formuláře jako komponenty — znovupoužitelné UI komponenty s BaseComponent
  • Automatická registrace služeb — Facade, Service, Repository, Mapper, Factory, Command, Job
  • Kompletní code quality toolchain — PHPStan, PHPCS, Rector, Latte lint, Neon lint
  • Testování — Nette Tester připraven k použití

Požadavky

  • Docker a Docker Compose
  • Make

Rychlý start

# Klonování projektu
git clone https://github.com/hintik-dev/nette-base-project.git
cd nette-base-project

# Konfigurace prostředí
cp docker/.env_example docker/.env
cp docker/php.env_example docker/php.env
cp config/local.example/ config/local -r

# Vyplníme nastavení připojení do databáze v config/local/database.neon (při použití jiné než vývojové databáze v kontejneru).

# Spuštění
make up

# Nastavení práv (zapisovatelné složky)
make chmod

# Databázové migrace
make migrate

# Instalace NPM závislostí
make ni

# Build assetů
make node-build-dev

Aplikace bude dostupná na http://localhost:10000 (port určen dle obsahu souboru docker/.env).

Podrobný návod: docs/getting-started.md

Dokumentace

Dokument Popis
Spuštění projektu Konfigurace prostředí, Docker, první spuštění
Struktura projektu Architektura, vrstvy, typy souborů, kontejnery
Komponenty Tvorba komponent, factory, registrace, flash zprávy
Formuláře Formuláře v komponentách, validace, DTO
DataGrid Tvorba grid komponent, sloupce, filtry, akce
Job systém Plánované úlohy, logování běhu, cron
Jazykové mutace contributte/translation, překladové soubory
CLI Příkazy Psaní a spouštění konzolových příkazů
Migrace Správa databázové struktury přes Phinx
Testování Psaní a spouštění testů (Nette Tester)
Vývojový workflow Konvence, nástroje kvality, Make příkazy

Architektura

Projekt implementuje třívrstvou MVP architekturu:

Presentation  →  Domain  →  Infrastructure
(Presentery)     (Fasády,    (Repozitáře,
                 Služby,      Mappery,
                 Entity)      Databáze)

Aplikace je rozdělena do dvou modulů:

  • Admin (/admin/…) — přihlášení správci
  • Web (/…) — veřejná část webu

Make příkazy

make up             # Spuštění Docker prostředí
make bash           # Bash v PHP kontejneru
make migrate        # Spuštění databázových migrací
make watch          # Watch mód pro assety
make all            # Všechny testy a kontroly kódu
make all-fix        # Automatická oprava všech problémů
make nette-tester   # Spuštění testů
make phpstan        # Statická analýza

Kompletní přehled příkazů: docs/workflow.md

Technologie

Oblast Technologie
Framework Nette 3.2
PHP 8.5+
Databáze MariaDB (Nette Database Explorer)
Migrace Phinx 0.16
CLI Symfony Console 7
Job systém contributte/scheduler
DataGrid ublaboo/datagrid (contributte)
Jazykové mutace contributte/translation
Admin design AdminLTE 4 + Bootstrap 5
Frontend Vite
Statická analýza PHPStan 2
Coding standard PHP_CodeSniffer 3
Refaktoring Rector 2
Testování Nette Tester 2.6

Autor

Jan Hinterholzingerjan@hinterholzinger.cz

GitHub: hintik-dev

Licencováno pod MIT licencí.