Why these choices
Qcentic Edge is opinionated on purpose. Each pick below is the one we would make again tomorrow for a small, real, edge-ready application. This page is the short version — the why, not the formal record.
Filament
Enormous product for free: a full admin panel, forms, tables, infolists, actions, notifications, widgets, and a plugin ecosystem, all on top of Laravel with first-class authorization. For "small solution, real features" work, nothing else in PHP ships this much this fast. The template targets Filament 5.x only.
libSQL
The open fork of SQLite, built for the edge: embedded replicas, HTTP access, and a growing set of managed providers — Turso, Bunny Database, or your own sqld. One database technology covers local dev, CI, and global production. Session, cache, and queue all run on the database driver. Zero extra services to run or pay for.
FrankenPHP
A modern app server (worker mode, HTTP/2, HTTP/3) in a single process — no nginx + PHP-FPM pair to babysit. One image, multiple roles: the HTTP app runs on CaaS (Magic Containers) or a VPS; the queue worker, Reverb, and scheduler are self-hosted always-on processes (compose / k8s / VPS), not CaaS sidecars (ADR 0009).
Bunny
One vendor, edge-first, cheap. Magic Containers run the app on an edge runtime (gVisor-sandboxed); Bunny Database is managed libSQL, globally replicated; Bunny Storage is an S3-compatible object API with a CDN pull zone in front. No glue code between three different companies.
Passport, not Sanctum
Laravel Passport is the OAuth2 server for the API: personal access tokens, authorization code, refresh, client credentials. The Filament panel login stays email/password session on the web guard. Sanctum is fine, but it is not the default here — we wanted a real OAuth2 surface, not tokens-and-cookies.
Reverb, not Pusher Cloud
Laravel Reverb is a first-party PHP websocket server speaking the Pusher protocol to Laravel Echo. The server is ours, not pusher.com — same app image, php artisan reverb:start, its own container. No Node, no per-connection bill. Redis is optional, only when replicas scale out.
For the formal records behind these, see the ADRs in the repo.