DocumentationStacks & versions

Stacks & versions

Choose applications and versions for your project. Dwell provides curated managed profiles and a generic environment for Custom roles.

Managed or Custom?

A project can have a backend, a frontend or both. none disables a role; at least one must remain active. Custom is an active role without a managed framework.

  • Managed: Dwell scaffolds the application when needed, installs dependencies and provides the documented local integration. You select from its shipped catalog.
  • Custom: You install and maintain the application, dependencies, framework versions and application configuration. Dwell supplies its generic local runtime, routing and available development services.

Choose backend and frontend

Use the interactive selection in dwell init or pass type flags. All current managed backends are PHP-based.

Managed backends

  • Symfony (symfony)
  • Laravel (laravel)
  • WordPress (wordpress)
  • TYPO3 (typo3)
  • Shopware 6 (shopware6)

Managed frontends

  • React + Vite (react)
  • Vue + Vite (vite-vue)

Choose PHP to match the backend version line. Dwell validates the combination during initialization, stack changes and configuration loading. PHP 8.4 is the default for new projects. Older PHP lines may appear as legacy/EOL compatibility options; they are not recommendations for new projects.

React and Vue run with Vite on your machine. Their Node requirements can exceed the CLI minimum; build and up check the selected frontend requirement.

Understand versions

Inspect the catalog of your installed Dwell version before selecting a profile. New upstream releases are not automatically added to the offered profiles.

Inspect available versionsbash
dwell versions list

Version line
The profile line, such as Symfony 7.4 or React 19.3. Select it with --backend-version or --frontend-version.
Default / Standard
The preselected profile for a type. It is independent of the lifecycle label.
Lifecycle
recommended is a preferred profile, supported a curated alternative and legacy an older compatibility option. The separate upstream status is not a promise for your entire application.
Verification
metadata-reviewed, scaffold-tested and runtime-tested describe the available evidence. They do not guarantee every combination of operating system, architecture and application.
Pin
The specific curated scaffold, framework or generator version. A generator pin is not the framework version. Resolved dependencies remain recorded in the project lockfiles.

Create a project with explicit versions

This new project uses the currently offered Symfony 7.4 and React 19.3 lines with compatible PHP 8.4. Run the commands in the parent directory of the new project folder.

Select Symfony and Reactbash
dwell init my-project \
  --backend symfony \
  --backend-version 7.4 \
  --frontend react \
  --frontend-version 19.3 \
  --php 8.4
cd my-project
dwell build
dwell up

Keep composer.lock and package-lock.json in the project. A version line alone does not guarantee identical fresh installations over time.

Use Custom roles

Custom PHP uses a supported PHP runtime and a webroot relative to the backend directory. Custom Frontend runs your own development command.

Custom PHP with a public webrootbash
dwell init custom-php --backend custom --backend-webroot public --php 8.4

Custom Frontend with an npm start commandbash
dwell init custom-frontend --frontend custom --frontend-dev-command '{"command":"npm","args":["run","dev"]}'

These examples create separate new projects. Then add your application code and install its dependencies yourself. A Custom frontend start command must honor HOST=127.0.0.1 and the allocated PORT. Custom is not a guaranteed framework integration.

Notes & limits

Dwell does not silently upgrade existing applications. stack set requires a stopped project and can change a role type or framework version only when the existing role directory is empty. It does not perform framework migrations. A PHP-only change is possible when compatible with the backend profile.

Next steps

Start your project with the projects guide or learn which settings to change with configuration commands. The product page explains the scope of the managed catalog.

Technical reference