README



DDEV is an open-source tool for running local web development environments for PHP and Node.js, ready in minutes. Its powerful, flexible per-project environment configurations can be extended, version controlled, and shared. DDEV allows development teams to adopt a consistent Docker workflow without the complexities of bespoke configuration.
Documentation
To check out live examples, docs, contributor live training, guides and more visit ddev.com and docs.ddev.com
Questions
If you need help, our friendly community provides great support.
Wonderful Sponsors
DDEV is an Apache License 2.0 open-source project with its ongoing development made possible entirely by the support of these awesome backers. If you'd like to join them, please consider sponsoring DDEV development.

Contributing
See “How can I contribute to DDEV?” in the FAQ, and the Contributing page.

Get Started
- Check System Requirements: macOS (Intel and Apple Silicon), Windows 10/11, WSL2, Linux, and GitHub Codespaces.
- Install a Docker provider and DDEV.
- Try a CMS Quick Start Guide.
Additionally, https://ddev.com/get-started/ provides an up-to-date getting-started guide.
Highlighted Features
- Quickly create local web development environments based on code repositories, with minimal configuration.
- Import a database to any of your local environments.
- Import upload files to match the project (e.g. Drupal sites/default/files or WordPress
wp-content/uploads).
- Customizable integration with hosting platforms like Upsun (formerly Platform.sh), Pantheon, Acquia and others.
- Run commands within the Docker environment using
ddev exec.
- View logs from the web and database containers.
- Use
ddev ssh to explore the Linux environment inside the container.
- List running projects with
ddev list.
- Snapshot databases with
ddev snapshot.
- Temporarily share your development website with others using
ddev share.
- Create custom commands as simple shell scripts.
- Enjoy effortless, trusted HTTPS support.
- Extend and customize environments as much (or as little!) as you need to.
Run ddev to see all the commands.
Extension points exported contracts — how you extend this code
AddonStorage (Interface)
AddonStorage defines interface for addon data persistence [4 implementers]
pkg/config/remoteconfig/storage/addon_storage.go
Task (Interface)
Task is the interface defining methods we'll use in various tasks [3 implementers]
pkg/ddevapp/task.go
ConfigProvider (Interface)
ConfigProvider defines the interface for configuration providers. [1 implementers]
pkg/settings/settings_config.go
CommandBuilder (Interface)
(no doc) [3 implementers]
third_party/ampli/ampli.go
CmdOption (FuncType)
CmdOption is a function type for configuring exec.Cmd
pkg/exec/exec.go
SponsorshipStorage (Interface)
SponsorshipStorage defines interface for sponsorship data persistence [4 implementers]
pkg/config/remoteconfig/storage/sponsorship_storage.go
ProviderFactory (Interface)
ProviderFactory defines the interface for creating ConfigProviders. [1 implementers]
pkg/settings/settings_config.go
Event (Interface)
(no doc) [2 implementers]
third_party/ampli/ampli.go
Core symbols most depended-on inside this repo
Errorf
called by 638
pkg/amplitude/loggers/ddev_logger.go
RunHostCommand
called by 552
pkg/exec/exec.go
Chdir
called by 401
pkg/testcommon/testcommon.go
Cleanup
called by 362
pkg/testcommon/testcommon.go
Failed
called by 327
pkg/util/utils.go
Warning
called by 320
pkg/util/utils.go
Stop
called by 286
pkg/ddevapp/ddevapp.go
GetConfigPath
called by 277
pkg/ddevapp/config.go
Shape
Function
1,797
Method
481
Struct
163
TypeAlias
23
Interface
18
FuncType
13
Languages
Go97%
TypeScript3%
Modules by API surface
pkg/tui/model_test.go118 symbols
third_party/ampli/ampli.go104 symbols
pkg/ddevapp/ddevapp.go99 symbols
docs/content/assets/jquery-3.5.1.min.js83 symbols
pkg/ddevapp/ddevapp_test.go50 symbols
pkg/ddevapp/mutagen.go44 symbols
pkg/ddevapp/addons.go41 symbols
pkg/util/utils.go40 symbols
pkg/globalconfig/global_config.go38 symbols
pkg/ddevapp/config.go36 symbols
pkg/tui/model.go35 symbols
cmd/ddev/cmd/utility-port-diagnose.go33 symbols
Dependencies from manifests, versioned
phpmailer/phpmailer6.8 · 1×
shopware/administrationv6.5.0 · 1×
shopware/corev6.5.0 · 1×
shopware/elasticsearchv6.5.0 · 1×
shopware/storefrontv6.5.0 · 1×
symfony/flex2 · 1×
symfony/runtime5.0|^6.0 · 1×
github.com/Azure/go-ansitermv0.0.0-2025010203350 · 1×
github.com/DefangLabs/secret-detectorv0.0.0-2025081123453 · 1×
github.com/MakeNowJust/heredoc/v2v2.0.1 · 1×
github.com/Masterminds/goutilsv1.1.1 · 1×
Datastores touched
(mysql)Database · 1 repos
database_nameDatabase · 1 repos
dbDatabase · 1 repos
databasenameDatabase · 1 repos
databasenameDatabase · 1 repos
drupalDatabase · 1 repos
olddbDatabase · 1 repos
somedbDatabase · 1 repos