TinyWebMVC - minimalistyczny framework na komponentach Symfony

TinyWebMVC to lekki framework PHP oparty na architekturze MVC (Model–View–Controller), zaprojektowany z myślą o prostocie, wydajności oraz pełnej kontroli nad kodem aplikacji. Framework wykorzystuje sprawdzone komponenty z ekosystemu Symfony, zachowując jednocześnie minimalistyczną strukturę projektu i bardzo szybki czas uruchamiania.
TinyWebMVC jest przeznaczony dla programistów, którzy chcą tworzyć aplikacje webowe w sposób uporządkowany, bez nadmiarowej złożoności dużych frameworków. Dzięki temu świetnie nadaje się zarówno do małych projektów, jak i średnich aplikacji webowych.
Główne cechy
Minimalistyczna architektura
Framework zawiera tylko niezbędne elementy potrzebne do budowy aplikacji webowej:
- routing
- kontrolery
- widoki
- dostęp do bazy danych
- kontener zależności
Brak zbędnych warstw sprawia, że kod jest czytelny i łatwy do utrzymania.
Konfiguracja w PHP
TinyWebMVC wykorzystuje konfigurację opartą o pliki PHP, dzięki czemu konfiguracja jest:
- dynamiczna
- łatwa do debugowania
- zgodna z językiem aplikacji
Przykład:
return [
'db' => [
'dsn' => 'mysql:host=localhost;dbname=app',
'user' => 'root',
'password' => ''
]
];
Widoki w czystym PHP
Framework korzysta z prostych widoków PHP, bez dodatkowych silników szablonów. Pozwala to zachować maksymalną wydajność i elastyczność.
<h1>Users</h1>
<?php foreach ($users as $user): ?>
<li><?= htmlspecialchars($user['name']) ?></li>
<?php endforeach; ?>
Warstwa bazy danych PDO
TinyWebMVC wykorzystuje PDO, co zapewnia:
- obsługę wielu baz danych
- bezpieczeństwo zapytań (prepared statements)
- prostą integrację z aplikacją
Przykład:
$users = $db->fetchAll(
'SELECT * FROM users'
);
Kontener zależności (Dependency Injection)
Framework automatycznie wstrzykuje zależności do kontrolerów, dzięki czemu kod jest bardziej modularny i testowalny.
class UserController
{
public function __construct(
private Database $db,
private View $view
) {}
}
Integracja z komponentami Symfony
TinyWebMVC wykorzystuje wybrane komponenty z ekosystemu Symfony, między innymi:
- HttpFoundation – obsługa request/response
- Routing – zarządzanie trasami
- DependencyInjection – kontener usług
Dzięki temu framework korzysta z dojrzałych i stabilnych rozwiązań.
Zastosowania
TinyWebMVC może być używany w wielu typach projektów webowych.
Aplikacje biznesowe
Systemy administracyjne, panele zarządzania oraz aplikacje CRUD.
Strony internetowe
Serwisy firmowe, landing pages oraz portale informacyjne.
API backend
Framework dobrze sprawdza się jako backend dla:
- aplikacji SPA
- aplikacji mobilnych
- mikroserwisów
Projekty edukacyjne
TinyWebMVC jest również dobrym narzędziem do nauki architektury MVC, ponieważ jego struktura jest przejrzysta i łatwa do zrozumienia.
Zalety
Prostota
Minimalna ilość abstrakcji sprawia, że framework jest łatwy do zrozumienia i rozwijania.
Wydajność
Mały bootstrap oraz brak ciężkich warstw pośrednich zapewniają szybkie działanie aplikacji.
Elastyczność
Programista ma pełną kontrolę nad strukturą aplikacji i może łatwo rozszerzać framework.
Niska bariera wejścia
Znajomość podstaw PHP wystarcza, aby rozpocząć pracę z TinyWebMVC.
Stabilność
Dzięki wykorzystaniu komponentów Symfony framework opiera się na sprawdzonych rozwiązaniach.
Podsumowanie
TinyWebMVC to nowoczesny, minimalistyczny framework PHP, który łączy prostotę klasycznego MVC z solidnymi komponentami Symfony. Dzięki niewielkiej złożoności i przejrzystej architekturze jest idealnym narzędziem dla programistów, którzy chcą tworzyć szybkie i czytelne aplikacje webowe bez nadmiaru konfiguracji.
Strona projektu:
https://tinywebmvc.7m.pl
Kod źródłowy:
https://github.com/dariuszrorat/tinywebmvc