Search by

syp / drupal-project

stefanpetrov

Drupal 11 project template with Drush and the syp/drun task runner.

Package info

gitlab.com/stefan.petrov/drupal-project

Issues

Type:project

pkg:composer/syp/drupal-project

Statistics

Installs: 1

Dependents: 0

Suggesters: 0

Stars: 0

1.0 2026-09-27 20:00 UTC

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.yml
  • phpcs.xml.dist
  • phpstan.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, run vendor/bin/drush config:export -y and commit the result. Until then, site:update fails because drush deploy refuses to import an empty config sync directory.
  • site:install-dump needs web/sites/default/settings.php with database credentials.
  • Drush is a production dependency because deployments need it. syp/drun is a dev dependency, used only locally and in CI.