mirdaczbpr / skeleton-app-base
Skeleton pro webovou aplikaci s Nette
Installs: 6
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 1
Type:project
pkg:composer/mirdaczbpr/skeleton-app-base
Requires
- php: >=8.1
- contributte/forms-bootstrap: ^0.8.5
- contributte/translation: ^2.0
- latte/latte: ^3.0
- nette/application: ^3.2
- nette/bootstrap: ^3.2
- nette/caching: ^3.2
- nette/database: ^3.2
- nette/di: ^3.2
- nette/forms: ^3.2
- nette/http: ^3.3
- nette/mail: ^4.0
- nette/robot-loader: ^4.0
- nette/security: ^3.2
- nette/utils: ^4.0
- tracy/tracy: ^2.10
Requires (Dev)
- nette/tester: ^2.5
README
Welcome! This is a basic skeleton of a modern web application built with the
Nette framework and the Latte templating engine.
If you find Nette helpful, please consider supporting it via a donation.
Thank you for your generosity!
Requirements
Installation
To install the application, use Composer:
composer create-project mirdaczbpr/skeleton-app-base MiRdACz-BPR
Make sure the following folders are writable:
temp/
log/
Database Setup
Before running the app, insert the users
permissions
table into your database:
CREATE TABLE `users` ( `id` int UNSIGNED NOT NULL AUTO_INCREMENT, `role` varchar(30) COLLATE utf8mb4_czech_ci NOT NULL, `username` varchar(50) COLLATE utf8mb4_czech_ci NOT NULL, `email` varchar(100) COLLATE utf8mb4_czech_ci NOT NULL, `password` varchar(255) COLLATE utf8mb4_czech_ci NOT NULL, `active_key` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_czech_ci DEFAULT NULL, `authtoken` varchar(128) COLLATE utf8mb4_czech_ci NOT NULL, `ip` varchar(45) COLLATE utf8mb4_czech_ci NOT NULL, `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) ENGINE=InnoDB CHARSET=utf8mb4 COLLATE=utf8mb4_czech_ci; INSERT INTO `users` (`id`, `role`, `username`, `email`, `password`, `active_key`, `authtoken`, `ip`, `created_at`) VALUES (12, 'admin', 'admin', 'admin@admin.cz', '$2y$10$qd6tnFXvP0.ghiAbsy8hgeN6bEJ/XXCe/kgOtUm2/Dukqp3z.sF5q', NULL, 'u3pqu6fv6ddbl6ax8f', '::1', '2025-06-17 21:24:31'); CREATE TABLE IF NOT EXISTS `permissions` ( `id` int NOT NULL AUTO_INCREMENT, `role` varchar(50) COLLATE utf8mb4_czech_ci NOT NULL, `resource` varchar(100) COLLATE utf8mb4_czech_ci NOT NULL, `privilege` varchar(50) COLLATE utf8mb4_czech_ci DEFAULT NULL, `allowed` tinyint(1) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_czech_ci; INSERT INTO `permissions` (`id`, `role`, `resource`, `privilege`, `allowed`) VALUES (5, 'admin', 'Admin', 'default', 1);
Web Server Setup
To quickly run the app with PHP’s built-in server:
php -S localhost:8000 -t www
Then open http://localhost:8000
in your browser.
If you use Apache or Nginx, configure your virtual host to point to the www/
directory.
⚠️ Important: Protect the following folders from public web access:
app/
, config/
, log/
, and temp/
Features
✅ Skeleton application using the latest Nette framework and Latte templating engine, fully compatible with PHP 8.1 and newer.
🔐 User registration and login system (with DB table users
permissions
and login admin
admin
)
🧰 Core Nette components:
nette/application
nette/forms
nette/database
nette/security
nette/http
nette/utils
🛠 Debugging with Tracy
🌍 Translation support via contributte/translation
🧾 Bootstrap-form integration using contributte/forms-bootstrap
🎨 Templating with Latte
📦 Composer-ready installation:
composer create-project mirdaczbpr/skeleton-app-base MiRdACz-BPR
🚀 Quick start using built-in PHP server:
php -S localhost:8000 -t www
🔐 Security best practices:
Protect app/
, config/
, log/
, and temp/
folders from web access
🧪 Basic testing setup using nette/tester
🗂 Project structure prepared for MVC and further expansion
Skeleton webový projekt v Nette
Vítejte! Toto je základní kostra moderní webové aplikace postavené na frameworku
Nette a šablonovacím systému Latte.
Pokud vám Nette pomáhá, zvažte prosím jeho podporu formou daru.
Děkujeme za vaši štědrost!
Požadavky
Instalace
Pro instalaci aplikace použijte Composer:
composer create-project mirdaczbpr/skeleton-app-base MiRdACz-BPR
Ujistěte se, že následující složky mají povolený zápis:
temp/
log/
Nastavení databáze
Před spuštěním aplikace je potřeba do databáze vložit tabulku users
permissions
:
CREATE TABLE `users` ( `id` int UNSIGNED NOT NULL AUTO_INCREMENT, `role` varchar(30) COLLATE utf8mb4_czech_ci NOT NULL, `username` varchar(50) COLLATE utf8mb4_czech_ci NOT NULL, `email` varchar(100) COLLATE utf8mb4_czech_ci NOT NULL, `password` varchar(255) COLLATE utf8mb4_czech_ci NOT NULL, `active_key` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_czech_ci DEFAULT NULL, `authtoken` varchar(128) COLLATE utf8mb4_czech_ci NOT NULL, `ip` varchar(45) COLLATE utf8mb4_czech_ci NOT NULL, `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) ENGINE=InnoDB CHARSET=utf8mb4 COLLATE=utf8mb4_czech_ci; INSERT INTO `users` (`id`, `role`, `username`, `email`, `password`, `active_key`, `authtoken`, `ip`, `created_at`) VALUES (12, 'admin', 'admin', 'admin@admin.cz', '$2y$10$qd6tnFXvP0.ghiAbsy8hgeN6bEJ/XXCe/kgOtUm2/Dukqp3z.sF5q', NULL, 'u3pqu6fv6ddbl6ax8f', '::1', '2025-06-17 21:24:31'); CREATE TABLE IF NOT EXISTS `permissions` ( `id` int NOT NULL AUTO_INCREMENT, `role` varchar(50) COLLATE utf8mb4_czech_ci NOT NULL, `resource` varchar(100) COLLATE utf8mb4_czech_ci NOT NULL, `privilege` varchar(50) COLLATE utf8mb4_czech_ci DEFAULT NULL, `allowed` tinyint(1) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_czech_ci; INSERT INTO `permissions` (`id`, `role`, `resource`, `privilege`, `allowed`) VALUES (5, 'admin', 'Admin', 'default', 1);
Spuštění webového serveru
Pro rychlé spuštění aplikace pomocí vestavěného PHP serveru spusťte:
php -S localhost:8000 -t www
Poté otevřete ve svém prohlížeči adresu http://localhost:8000
.
Používáte-li Apache nebo Nginx, nastavte virtuální hostitel tak, aby směřoval do složky www/
.
⚠️ Důležité: Zabezpečte tyto složky proti přímému přístupu z webu:
app/
, config/
, log/
, temp/
Funkce projektu
✅ Aplikace postavená na nejnovějším Nette frameworku a šablonovacím systému Latte, plně kompatibilní s PHP 8.1+
🔐 Registrace a přihlášení uživatelů (pomocí tabulky users
permissions
a login admin
admin
)
🧰 Klíčové komponenty Nette:
nette/application
nette/forms
nette/database
nette/security
nette/http
nette/utils
🛠 Ladění pomocí Tracy
🌍 Podpora překladů přes contributte/translation
🧾 Integrace Bootstrap formulářů přes contributte/forms-bootstrap
🎨 Šablonování pomocí Latte
📦 Instalace přes Composer:
composer create-project mirdaczbpr/skeleton-app-base MiRdACz-BPR
🚀 Rychlé spuštění pomocí vestavěného PHP serveru:
php -S localhost:8000 -t www
🔐 Bezpečnostní doporučení:
Zajistěte, aby složky app/
, config/
, log/
a temp/
nebyly dostupné z webu
🧪 Základní nastavení testování pomocí nette/tester
🗂 Struktura projektu připravena pro MVC a další rozšíření