Skip to main content
Version: v1
Vortex LogoVortex Logo

Vortex
Drupal project template

Vortex is a Drupal project template for building and deploying Drupal sites. This introduction is for anyone evaluating it or about to start a project with it. It covers why the template exists and what it's made of, and ends with links to install it, get help and contribute.

A Vortex project comes with the following parts, configured to work together so your team starts on features instead of infrastructure:

  • A containerized local environment
  • Automated testing and code quality tools
  • Continuous integration pipelines for GitHub Actions or CircleCI
  • Integrations with the Acquia and Lagoon hosting platforms

Every Vortex project shares the same structure and tooling, so a developer who has worked on 1 project knows their way around the next.

Renovate opens pull requests that update the tools the template ships. Automated tests in the template repository check every change to the template. The tests lower the risk of an update breaking your project and keep your project easier to maintain over time.

For a tour of Vortex in slides, see the DrupalSouth 2025 presentation (Google Slides | PDF).

Why Vortex exists​

Setting up a Drupal project takes time, and every setup comes out a little different:

  • ⏱️ Developers lose hours or days setting up their local, continuous integration and hosting environments
  • ⚠️ Inconsistent setups cause false negatives that erode trust in the tools
  • 🔌 Poorly understood third-party services slow integration and troubleshooting
  • 📉 Poor onboarding documentation slows new team members down

Those gaps add up to the following:

  • 😩 Developer frustration and burnout
  • ⏳ Project delays and missed deadlines
  • 💸 Unplanned costs and budget overruns

We built Vortex to solve these problems with a ready-to-use foundation for developing and maintaining Drupal projects.

3 pillars of Vortex​

📦
Template
+
📖
Documentation
+
🎛️
Installer

📦 Template​

The template includes the following:

  • 💧 A pre-configured Drupal project structure with module, theme and test boilerplate
  • 🧰 Pre-configured tools for code quality checks and automated testing
  • 🐳 Docker-based environment for local development and cloud hosting
  • ☁️ Built-in support for Acquia and Lagoon cloud hosting platforms
  • 🏗️ Continuous integration using GitHub Actions or CircleCI
  • 📖 Project documentation

➡️ See Features and Architecture

📖 Documentation​

The documentation comes in 3 parts:

  • 🌐 Centralized documentation on this site
  • 🗂️ Scaffolded structure for project-specific docs
  • 📋 Project README with local setup steps

🎛️ Installer​

The installer does the following:

  • 📦 Adds boilerplate for the features you select
  • 🏗️ Renames files and replaces strings during installation
  • 🔄️ Updates existing installations to a newer boilerplate version when you run ahoy update-vortex
  • 🔌 Runs as a standalone CLI application that scripts and AI agents can drive with prepared answers, a prompt schema and a validation mode

➡️ See Installation and Updating Vortex

🧱 Solid base for your projects​

Every project starts from a base with these qualities:

  • 🔄 Upgradable
  • 🧪 Automatically tested in many scenarios
  • 🛠️ Actively managed and maintained as a product since 2017
  • 📚 Documented on this documentation site

🚀 Quick start​

The installer needs PHP 8.3 or later, curl, git, tar and composer. Building the site needs Docker, Pygmy and Ahoy.

Run the installer in an empty directory and answer its prompts:

curl -SsL https://www.vortextemplate.com/install > installer.php && php installer.php

After a successful installation, the installer shows a Finished installing Vortex box before it offers to build the site.

➡️ See Installation for the full requirements and what each step shows

🛟 Getting help​

➡️ See Support

🤝 Contributing​

➡️ See Contributing

⚖️ License​

Vortex is licensed under the GPL-3.0 license. The LICENSE file has the full text.

The installer leaves the template's LICENSE file out of your project, along with SECURITY.md, CONTRIBUTING.md, CODE_OF_CONDUCT.md and .github/FUNDING.yml. Your project's composer.json declares "license": "proprietary".