Make it easy to set up, develop and maintain Drupal websites
Use tested Drupal project scaffold with DevOps integrations for CI and hosting platforms
Similar to Zen of Python, we use our own set of principles:
- Simple is better than complex.
- Rely on upstream sources as much as possible.
- Favor standard practices over custom implementations.
- Errors should never pass silently.
- Explicit logging helps.
- Readability counts.
- If the implementation is hard to explain, it's a bad idea.
Track our current progress and view planned updates on the GitHub project board.
Our installer simplifies setup, letting you choose only the features you need. It will integrate the latest scaffold release into your codebase and you will choose which changes to commit.
curl -SsL https://install.drevops.com > install.php
php install.php
rm -r install.php
Alternatively, clone this repository and adjust the configuration by manually editing or deleting the sections that aren't necessary for your setup.
The following list includes ✅ completed and 🚧 upcoming features.
- 💧 Drupal
- ✅ Based on drupal-composer/drupal-project
- ✅ Drupal 10
- ✅ Configurable webroot
- ✅ Pre-configured settings
- ✅ Custom module scaffold
- ✅ Custom theme scaffold
- ✅ Tests scaffold
- ✅ Configuration for admin modules: Environment indicator, Shield, Stage file proxy
- ✅ Configuration for Search API (Solr)
- ✅ Configuration for caching (Redis)
- ✅ Configuration for antivirus (ClamAV)
- 🐳 Docker services
- ✅ Nginx
- ✅ PHP
- ✅ MariaDB
- ✅ Solr
- ✅ Redis
- ✅ ClamAV
- ✅ Chrome
- 🏨 Hosting
- ✅ Acquia
- ✅ Lagoon
- 🚧 Pantheon
- 🚧 Platform.sh
- 💻 Local development
- ✅ Docker Compose + Ahoy
- 🚧 Lando
- 🚧 DDEV
- 🏗️ CI/CD
- 🛠️ Tooling
- ✅ Behat + Drupal extension + Behat Screenshot + Behat steps
- ✅ ESLint
- ✅ PHP Parallel Lint
- ✅ PHPCS
- ✅ PHPMD
- ✅ PHPStan
- ✅ PHPUnit
- ✅ SASS Lint
- ✅ SASS
- ✅ Twig-CS-Fixer
- 🚧 Pa11y
- ⚙️ Workflow
- ✅ Database from FTP, CURL, container image, hosting provider
- ✅ Pull request template
- ✅ Release drafter
- ✅ PR auto-assign
- ✅ PR auto-label
- ✅ Deployment notification to email
- ✅ Deployment notification to GitHub
- ✅ Deployment notification to Jira
- ✅ Deployment notification to New Relic
- ✅ Automated dependencies updates (Renovate)
- 📖 Documentation
- ✅ Your project README.md
- ✅ Your project documentation
- ✅ Scaffold documentation
- 🧪 DrevOps
- ✅ Unit test coverage for scripts
- ✅ Functional test coverage for workflows
- ✅ Integration test coverage for deployments
- ✅ Scaffold updates
- ✅ Basic installer
- 🚧 Advanced installer CLI UI
- 🚧 Advances installer Web UI
- 🚧 Automated project setup
- 🚧 Project dashboard
The documentation is authored within this repository in the .scaffold/docs
directory.
It is published to https://docs.drevops.com on Scaffold release.
Development version of the documentation is available at https://drevops-scaffold-docs.netlify.app/.
We provide paid support for DrevOps scaffold:
- New and existing project onboarding
- Support plans with SLAs
- Priority feature implementation
- Updates to the latest version of the platform
- DevOps consulting and custom implementations
Contact us at support@drevops.com