Skip to main content
← blog / drupal
Sep 18, 2026  ·  #drupal  ·  2 min read

Simplytest.me can launch Drupal CMS site templates

About a week ago, I wrote about the simplytest.me rewrite and closed on what was next: site templates and recipes. You can now launch a sandbox for a site template. I'm excited that people can now easily try out all the site templates on Simplytest.me.

Pick a template, not just a project

The home page now has a button that opens a modal listing the available site templates: screenshot, creator, launch link per card. The data comes from the same curated list Drupal CMS's installer uses for templates.

The modal lists every imported template. Filtering is a text search over name, description, and creator, not category pills — the curated list has no category field to filter on. Screenshots are hotlinked from each creator's own infrastructure and fall back to a placeholder when one 404s.

Share one base across every template

Each launch builds:

composer require drupal/<template>
composer drupal:recipe-unpack
drush si ../recipes/<template>

Installing from the recipe path, not the drupal_cms_installer profile — that profile installs a theme partway through the install and rebuilds the installer's container without its synthetic services, which is the failure the Drupal CMS demo already routes around.

The drupal_cms base preview this builds on isn't new. PR #640 is what made a base preview hold a complete, installed project instead of a bare Drupal checkout, and gave Drupal CMS its own base name so one-click demos could clone it instead of building from scratch. Templates don't clone (a recipe apply is database work specific to that template, so there's nothing to snapshot ahead of time) but they launch on top of the same daily-rebuilt base rather than starting from an empty Composer project.

The open question was whether every template also gets its own base. Timed against real Tugboat builds:

 time
base-drupal_cms (Composer run, no site installed, rebuilt daily)119s
Byte launch60s
Healthcare launch87s

Healthcare declares ~65 requirements and only 14 are missing from the shared base, so its composer require step runs in 9.7s. The rest — 33s for Byte, 48s for Healthcare — is the recipe apply, and that's the part no base preview can cache away. A dedicated base per template would cut launches to seconds, but that's 16 extra daily installs to save 60 seconds. Shared base wins, and promoting a template to its own base later is a simple config flip if one ever needs it.

Thanks for reading

I write about Drupal, PHP, and the quiet infrastructure behind large sites — caching, config, and testing. New posts land every week or two.