Jedes Repository startest du mit demselben Befehl in seinem Ordner:
ap run-local
Die ap-CLI lädt die Umgebungsdateien aus env/, startet die Dienste und danach den Entwicklungsserver; lokal und im Remote-Workspace verhält sich der Befehl gleich, und der Start-Button der Plattform-Erweiterung in VS Code, Cursor und Antigravity führt ihn in einem Terminal aus.
Backend, App und Homepage
Ein Backend braucht laufendes Docker: ap run-local startet über Docker Compose die Datenbank, Mailhog für abgefangene E-Mails und PHPMyAdmin, danach den Entwicklungsserver von NestJS, FastAPI oder Laravel. Eine App startet als Flutter Web oder mit dem Entwicklungsserver ihres Stacks wie Next.js oder Expo, mit den generierten und eigenen Umgebungsdateien im Build (bei Flutter über --dart-define-from-file); Ziel und Gerät gibst du so an:
ap run-local chrome # Web-Build im Browser
ap run-local ios-simulator # iOS-Simulator, nur auf macOS
ap devices list # verfügbare Geräte anzeigen
Eine Homepage startet Hugo oder Astro auf dem Port des Repositorys. Die Laufzeiten kommen aus .tool-versions, auf macOS und Linux über asdf, auf Windows über FVM, NVM und HVM; ap bootstrap installiert sie ohne Start der Anwendung, und ap doctor prüft, ob alle Werkzeuge vorhanden sind.
Ports
Jedes Repository hat feste lokale Ports von der Plattform, sodass Backend, App und Homepage parallel laufen:
ap ports
Der Befehl zeigt, welcher Port zu welchem Repository gehört.
Beenden
Der Entwicklungsserver läuft im Terminal, bis du ihn mit Strg+C beendest; die Docker-Container eines Backends können weiterlaufen, du siehst und stoppst sie in Docker Desktop oder mit docker ps.
Wenn etwas nicht startet
Meldet ap doctor ein fehlendes Werkzeug, installierst du es über das Entwickler-Setup der Setup-App; im Workspace sind die Werkzeuge vorinstalliert. Bei einem belegten Port läuft meist noch eine frühere Instanz derselben Anwendung oder ein alter Container, den du beendest; ap ports zeigt, welcher Port gemeint ist. Scheitert ein Backend an seinen Diensten, läuft Docker meist nicht; starte Docker Desktop und wiederhole den Befehl. Eigene Variablen trägst du in env/local.custom.env ein und startest neu; die generierten Dateien in env/ überschreibt die Plattform.