20 lines
982 B
Markdown
20 lines
982 B
Markdown
# 001 – Backend auf Symfony 7 (PHP)
|
||
|
||
**Status:** accepted
|
||
|
||
**Kontext.** Das Werkzeug braucht eine kleine CRUD-API, die später auch von
|
||
Home-Assistant und (ggf.) von mobilen Clients konsumiert wird. Der
|
||
Projektverantwortliche kennt Symfony und möchte die Logik im Backend tragen
|
||
(serverseitig), nicht im Frontend.
|
||
|
||
**Entscheidung.** Symfony 7 (PHP 8.3) als Backend-Framework. Eigene schlanke
|
||
Controller mit JSON-Antworten, **kein ApiPlatform** (zu viel Magie für dieses
|
||
Anwendungsfeld). Repository-Schicht via Doctrine.
|
||
|
||
**Konsequenzen.**
|
||
- + Konvention/Ökosystem des Betreibers, kein zweites Ökosystem.
|
||
- + Doctrine + Symfony-Forms decken CRUD, Validierung und Security-Grundbaukästen ab.
|
||
- + Einfach zu hosten: FrankenPHP (oder php-fpm + nginx) in einem Container, keine zweite Laufzeit.
|
||
- − Keine SPA-Features, kein React-Native-Ökosystem – passt aber zur Anordnung.
|
||
- − Symfony hat eine Learning-Curve für neue Team-Mitglieder; im aktuellen Kontext kein Problem.
|