DokumentationKonfiguration

Konfiguration

Die Projektkonfiguration beschreibt deine lokale Dwell-Umgebung. Verwende die passenden Commands, wenn du Namen, Runtime, Verzeichnisse oder URLs ändern möchtest.

Was steht in dwell.json?

.dwell/dwell.json liegt im Projektordner. Dwell liest und validiert diese Datei beim Auflösen des Projekts. Bevorzuge die CLI-Commands: Sie prüfen die gesamte Konfiguration und synchronisieren den zugehörigen lokalen Zustand.

  • project ist der Anzeigename, slug der technische Name für Runtime-Ressourcen und hostBase die Basis lokaler Hosts ohne .localhost oder .local.
  • stack beschreibt Backend, Frontend und ihre Workspace-Verzeichnisse; runtime enthält bei aktivem Backend die PHP-Version.
  • services steuert optionale Development-Services. routing legt Hosts und URL-Pfade unabhängig von den Workspace-Verzeichnissen fest.
  • network steuert LAN-Freigabe, Tool-Freigabe und Interface-Auswahl. identity bleibt die von Dwell erzeugte Projekt- und Datenidentität.

Konfiguration ansehen

Führe die Commands im Projektordner aus. config show zeigt Projektname, Slug, Hostbasis, primäre Route und Netzwerkeinstellungen. Es ist eine Zusammenfassung, keine vollständige JSON-Ausgabe.

Aktuelle Projektwerte ansehenbash
dwell config show

Projektwerte ändern

dwell config öffnet den interaktiven Editor im Terminal. Für eine gezielte Änderung oder ein Skript nutze config set mit passenden Flags.

Interaktiv bearbeitenbash
dwell config

Hostbasis gezielt ändernbash
dwell config set --host demo

--host demo setzt die Hostbasis ohne Domain-Suffix. Änderungen an Host, Slug oder Netzwerk können laufende Services neu starten. Prüfe anschließend die ausgegebenen URLs; der Anzeigename ist unabhängig vom Ordnernamen.

Den passenden Command wählen

Nicht jede Einstellung gehört zu config. Wähle den Command nach der Art der Änderung.

config / config set
Allgemeine Projekt- und Netzwerkeinstellungen wie Anzeigename, Slug, Hostbasis oder LAN-Freigabe.
stack set
Rollen, Stack-Profile und PHP-Runtime ändern. Das Projekt muss gestoppt sein; Typ- und Framework-Versionswechsel sind bei gefüllten Rollenverzeichnissen blockiert.
paths move
Ein Backend- oder Frontend-Verzeichnis verschieben und die Konfiguration dazu aktualisieren. Das ändert keine URL.
routing
Anwendungs-Hosts und URL-Pfade anzeigen oder ändern. Workspace-Verzeichnisse sind davon unabhängig.
services enable / disable
Optionale Development-Services aktivieren oder deaktivieren.

Die Beispiele sind unabhängige Aktionen, keine gemeinsame Befehlsfolge. Für stack set und paths move stoppe zuerst mit dwell down. PHP 8.4 muss zum Backend-Profil passen; beim Verschieben muss ein Backend aktiv sein und api leer oder noch nicht vorhanden sein.

PHP in einem kompatiblen Backend ändernbash
dwell stack set --php 8.4

Backend-Verzeichnis verschiebenbash
dwell paths move backend api

Konfigurierte Routen ansehenbash
dwell routing list

Ein kleiner Konfigurationsauszug

Dieser Auszug zeigt nur Rollen und PHP für Symfony 7.4 mit React 19.3. Weitere erforderliche Felder sind absichtlich ausgelassen. Ersetze deine Datei nicht durch diesen Auszug.

Auszug – keine vollständige Konfigurationsdateijson
{
  "stack": {
    "backend": { "type": "symfony", "version": "7.4", "dir": "backend" },
    "frontend": { "type": "react", "version": "19.3", "dir": "frontend" }
  },
  "runtime": { "php": { "version": "8.4" } }
}

Hinweise & Grenzen

Behalte die von Dwell erzeugte identity bei. Secrets liegen separat und gehören nicht in dwell.json. Generierte Runtime-Dateien sind keine Konfigurationsquelle. Ein Rollenverzeichnis ist ein Workspace-Pfad; Produktionsausgabe und Deployment werden hier nicht konfiguriert. Nach dem Verschieben des gesamten Projektordners ist dwell reinit der passende Schritt.

Als Nächstes

Prüfe bei Stack- und PHP-Änderungen zuerst die Kompatibilität im Stacks-Guide. Für Start und Stopp hilft der Projekte-Guide; genaue Schema- und Änderungsregeln findest du in der technischen Referenz.

Technische Referenz