PSR-basierte Runtime
HTTP Messages, Middleware, Factories, Logging, HTTP-Client-Integration und DI Container respektieren PSR Contracts dort, wo es sinnvoll ist.
Eine modulare PHP-8.1+-Grundlage mit PSR HTTP, PSR Logging, PSR-11-kompatiblem Container, Routing, Views, Datenbank-Layer, Sessions, Validierung, Uploads und CLI-Commands.
$kernel->handle();
HTTP Messages, Middleware, Factories, Logging, HTTP-Client-Integration und DI Container respektieren PSR Contracts dort, wo es sinnvoll ist.
Web Requests und CLI-Commands teilen dieselbe Konfiguration, das Provider-Modell und den Container mit getrennten Entrypoints Kernel und CliKernel.
Routing, Views, Datenbank-Layer, Sessions, Validierung, Uploads, Security, Events, Queues und Dokumentation sind als explizite Framework-Komponenten organisiert.
Überblick über die wichtigsten eingebauten Teile, die die Grundlage für Webanwendungen, CMS-Projekte, Administrationsoberflächen und Integrationssysteme bilden.
ApplicationContext, kernels, runtime lifecycle, Laden der Konfiguration und Orchestrierung der service providers.
$kernel->handle();
CLI entrypoint, CliKernel lifecycle, command registry, exit codes und cron pattern mit Lock.
vendor/bin/lemonade list
Resolving der aktuellen locale, Laden von Übersetzungen, fallback strategy und Sprachanwendung während des runtime.
$title = $helpers->lang('home.hero.title');
Service lifetimes, bindings, aliases, dependency resolution und praktische Patterns für Service-Registrierung.
$container->singleton(MyService::class, MyService::class);
Strategie der Service-Registrierung im DI. Provider-specific registrations und praktische Beispiele sind in Unterseiten aufgeteilt.
$container->get(Lemonade\Framework\Routing\UrlGenerator::class);
HTTP request/response runtime, middleware pipeline, dispatch handlers und error rendering flow.
(new KernelFactory())->create($context)->handle();
Die Anwendung verfügt über eine Framework-API-Schicht mit Health-Endpunkt, OpenAPI-Spezifikation und einfacher HTML-Dokumentation.
GET /api/framework/health
Middleware contracts, processing order, Eingriff in den request/response flow und Kompositionsregeln.
$framework->middleware(fn (MiddlewareStack $stack) => $stack->add(App\Http\Middleware\AuthMiddleware::class));
Verhalten des HTML response minification middleware, safety guards und Integrationspunkte.
$pipeline->pipe(HtmlMinifyMiddleware::class);
Router mit explicit routes und convention routes, named URL generation, route groups und middleware stack.
$router->getNamed('home', '/', 'HomeController@index');
Wiring der view engine, shared variables, component integration und rendering workflow.
$html = $this->view()->render('home.index', ['title' => 'Homepage']);
Wiederverwendbare presentation blocks, registriert über service providers und verfügbar über ComponentRegistry.
$components = $container->get(ComponentRegistry::class);
Gemeinsame database infrastructure, provider boundaries, schema API und grundlegende praktische Nutzung.
use Lemonade\Framework\Database\Database;
$db = $container->get(Database::class);
$rows = $db->select('SELECT * FROM users WHERE active = ?', [1]);
Session lifecycle, flash messages, handler bindings und Integration in den request flow.
$session->set('user_id', 42);
Security primitives, CSRF protection, sichere Grenzen des request processing und Hinweise zur Authentifizierung.
<?= $helpers->csrfField() ?>
Überblick über FormValidation, schema usage und separate Seiten mit detaillierter Beschreibung der validation rules.
$result = $validator->field('email')->required()->email()->validate($payload);
Debug-Komponente mit dumper service, context capture und Auswahl des CLI/HTML renderers.
dump($payload);
Integration von robots.txt und sitemap.xml für die technische Auffindbarkeit der Website.
$router->get("/sitemap.xml", ...);
Filesystem service, storage path helpers, file operations und sichere Schreibvorgänge während des runtime.
$filesystem->write($context->resolveCachePath('example.json'), json_encode($payload, JSON_THROW_ON_ERROR));
$data = json_decode($filesystem->read($context->resolveCachePath('example.json')), true, 512, JSON_THROW_ON_ERROR);
Upload service flow, file validation boundaries, storage strategies und Beispiele für file processing.
$image = $this->upload()->uploadImage('avatar', 'avatar');
Benchmarking, request logging, tracing hooks und Integrationspunkte für operative Diagnostik.
$logger->info('Import started');
Helper utilities, gemeinsame support abstractions und empfohlene usage patterns in der Anwendung.
$url = $helpers->url('documentation.show', ['path' => 'core']);