bluefly/recipe_onboarding

AI-powered platform onboarding with recipe discovery, guided setup workflows, and comprehensive testing framework

v0.1.2 2025-07-14 10:46 UTC

This package is auto-updated.

Last update: 2025-07-14 10:52:06 UTC


README

A Drupal module that provides enhanced recipe management following native Drupal patterns.

Features

Native Recipe Management

  • Recipe Discovery: Finds recipes in standard locations
  • Recipe Application: Uses core drush recipe command
  • Progress Tracking: Tracks which recipes have been applied
  • Simple UI: Admin forms for recipe management

Enhanced Features (Built on Native Patterns)

  • Onboarding Sessions: Guide users through recipe application
  • AI Recommendations: Suggest relevant recipes based on site needs
  • Analytics: Track recipe usage and success rates
  • Developer Tools: Help create new recipes

Usage

Admin UI

  1. Navigate to Configuration > Development > Recipes
  2. View available recipes
  3. Click "Apply Recipe" to apply a recipe
  4. Use dry run option to preview changes

Drush Commands

# List available recipes
drush recipe:list

# Get info about a specific recipe
drush recipe:info llm_platform

# Apply a recipe (core command)
drush recipe /path/to/recipe

Architecture

The module follows native Drupal patterns:

  • Entities: Uses content entities for tracking (OnboardingSession, Recipe metadata)
  • Services: Simple services that wrap core functionality
  • Forms: Standard Drupal forms for UI
  • Commands: Drush commands that complement core drush recipe

No Over-Engineering

This module does NOT:

  • Auto-analyze module dependencies
  • Generate configuration suggestions
  • Create complex automation workflows

Instead, it:

  • Helps discover available recipes
  • Provides a UI for the core recipe system
  • Tracks what has been applied
  • Offers optional enhancements like AI recommendations

Recipe Structure

Drupal recipes follow a simple structure:

name: 'My Recipe'
description: 'What this recipe does'
type: 'Site'
install:
  - module_name
  - another_module
config:
  actions:
    system.site:
      simple_config_update:
        name: 'My Site'

That's it! The recipe system handles module installation and configuration updates.