This project is not covered by Drupal’s security advisory policy.

* After the 10 day threshold for a project, this will have an opt-in for security coverage and a 1.0.0 stable release.

A Drush command that lets you interactively compose Drupal recipes from your site's active configuration. Part of the Dripyard project.

How it works

Run drush drb and the recipe builder walks you through an interactive TUI:

  1. Upstream selection — Pick existing recipes whose config should be excluded from your new recipe.
  2. Metadata — Set the recipe name, type, and description.
  3. Config selection — Browse by category, use smart bundle discovery (e.g. node:blog), or search by name.
  4. Dependency validation — Flags unresolved config dependencies.
  5. Module detection — Collects the modules your selected config requires.
  6. Preview and write — Review the generated recipe.yml and config files, then write them to disk.

Demo

https://www.youtube.com/watch?v=8nvo1Sthxzc

Requirements

  • Drupal 10.3+ or 11
  • Drush 13+
  • PHP 8.2+

Installation


composer require drupal/dripyard_recipe_builder drush en dripyard_recipe_builder

Usage

drush dripyard:recipe_builder

Or use the alias:

drush drb

Options

Option Description
--upstream=path1,path2 Comma-separated upstream recipe paths
--recipe-name="My Recipe" Set the recipe name (skip the prompt)
--recipe-type=Dripyard Set the recipe type (default: Dripyard)
--bundle-filter=node:blog Pre-select all config for a bundle
--refresh Non-interactive re-export of an existing recipe

Examples

Create a recipe with a bundle pre-selected:

drush drb --bundle-filter=node:event

Update an existing recipe at a specific path:

drush drb recipes/my_recipe

Re-export an existing recipe without prompts:

drush drb recipes/my_recipe --refresh

Output

The command generates a recipe directory:


my_recipe/ recipe.yml config/ node.type.event.yml field.field.node.event.field_date.yml views.view.events.yml ... composer.json (if contrib modules are needed)
Supporting organizations: 

Project information

Releases