syp / drupal-project
Drupal 11 project template with Drush and the syp/drun task runner.
1.0
2026-09-27 20:00 UTC
Requires
- composer/installers: ^2.3
- drupal/core-composer-scaffold: ^11.4
- drupal/core-project-message: ^11.4
- drupal/core-recipe-unpack: ^11.4
- drupal/core-recommended: ^11.4
- drush/drush: ^13.6
Requires (Dev)
- syp/drun: ^1.0
Suggests
None
Provides
None
Conflicts
Replaces
None
This package is auto-updated.
Last update: 2026-09-27 18:21:28 UTC
README
A Drupal 11 project template. It is based on drupal/recommended-project,
with the web root in web/, and adds Drush and the
syp/drun task runner.
Create a project
composer create-project syp/drupal-project mysite
cd mysite
git init
vendor/bin/run git:hooks-install
create-project runs vendor/bin/run drun:init, which writes these files
to the project root:
runner.ymlphpcs.xml.distphpstan.neon.dist
Review runner.yml and commit it. Put machine-specific overrides, such as
drun.exec.prefix, in runner.local.yml; git ignores that file.
Everyday commands
vendor/bin/run site:install-clean # fresh install from the profile
vendor/bin/run site:install-dump # import drun.dump.path, then deploy steps
vendor/bin/run site:update # drun.deploy.steps (default: drush deploy)
vendor/bin/run qa:all # lint, phpcs, phpstan, composer audit
vendor/bin/run list # everything else
See the syp/drun README for configuration.
Notes
- After the first
site:install-clean, runvendor/bin/drush config:export -yand commit the result. Until then,site:updatefails becausedrush deployrefuses to import an empty config sync directory. site:install-dumpneedsweb/sites/default/settings.phpwith database credentials.- Drush is a production dependency because deployments need it. syp/drun is a dev dependency, used only locally and in CI.