A comprehensive Claude Code skill for the complete Drupal development lifecycle - from project creation to team collaboration and ongoing maintenance.
Works in both Claude Code CLI (local) and Web environments.
See INSTALL.md for detailed installation instructions.
Quick install (Claude Code CLI):
# Clone repository
git clone https://github.com/jamieaa64/Drupal-DDEV-Setup-Claude-Skill.git
cd Drupal-DDEV-Setup-Claude-Skill
# Copy to user skills directory
mkdir -p ~/.claude/skills
cp -r .claude/skills/drupal-setup ~/.claude/skills/Quick install (Claude Code Web):
# Package the skill
./package-skill.sh
# Upload drupal-setup-skill.zip to Claude Code WebNew project:
Create a new Drupal site called "my-project"
Existing project:
Set up this existing Drupal project
Update after pulling:
Update my local Drupal environment
- 30-second setup with organizational best practices
- Creates Drupal 11 Core or Drupal CMS projects
- Generates all configuration files (settings.php, .gitignore, DDEV config)
- Sets up Git repository and pushes to GitHub
- Includes comprehensive documentation
- 2-minute onboarding for new team members
- Automatic environment sync after pulling changes
- One-command reset for clean slate
- Works with or without DDEV
- Environment-aware (adapts to local CLI vs web)
- β Intelligent scenario detection (new vs existing project)
- β Environment detection (DDEV vs web)
- β Template-based Quick Mode (fast, production-aligned)
- β Optional Full Mode (SQLite for testing)
- β Complete lifecycle management (setup β develop β maintain)
- β Team collaboration workflows
- INSTALL.md - Complete installation guide
- plan.md - Architecture and design decisions
- CurrentWorkflow.md - Organization's Drupal workflow
- .claude/skills/drupal-setup/README.md - Detailed skill documentation
You: "Create a new Drupal site called 'client-portal'"
Claude: I'll help you set up a new Drupal project!
1. Project name: client-portal
2. Drupal variant: [1] Drupal 11 Core / [2] Drupal CMS / [3] Minimal
Choice: 1
3. Setup mode: [1] Quick (30s) / [2] Full (5-8min)
Choice: 1 (default)
4. GitHub repository: https://github.com/org/client-portal
5. Include common modules? Y
β Project created in 30 seconds!
β Pushed to GitHub
β Ready for team to clone and deploy
# New developer joins team
git clone https://github.com/org/client-portal
cd client-portalYou: "Set up this existing Drupal project"
Claude: This looks like an existing Drupal project!
What would you like to do?
[1] Initial setup (first time working on this project)
[2] Update after pulling changes
[3] Reset local environment
[4] Create new project instead
Choice: 1
[With DDEV - Fully Automated]
β ddev start
β ddev composer install
β ddev drush site:install --existing-config
β ddev launch
Done! Site ready at https://client-portal.ddev.site
Login: admin / admin
Your local development environment is ready!
git pull # Team member pushed changesYou: "Update my local Drupal environment"
Claude: Syncing your environment...
β ddev composer install (new dependencies)
β ddev drush config:import -y (config changes)
β ddev drush updb -y (database updates)
β ddev drush cache:rebuild
Changes applied:
- Dependencies updated (composer.lock changed)
- Configuration imported (3 config files changed)
- Database updates run (2 updates)
- Cache cleared
Your local environment is now in sync with the repository!
You: "Reset my Drupal environment"
Claude: Resetting your local environment...
β ddev delete -y (removed database)
β ddev start
β ddev composer install
β ddev drush site:install --existing-config
β ddev launch
Environment reset complete!
Fresh Drupal installation with current configuration.
Created projects include:
project-name/
βββ .ddev/
β βββ config.yaml # DDEV configuration
βββ config/
β βββ sync/ # Drupal configuration (version controlled)
βββ private/ # Private files directory
βββ web/ # Drupal web root
β βββ modules/custom/ # Custom modules
β βββ themes/custom/ # Custom themes
β βββ sites/default/
β βββ settings.php # Organization-specific settings
β βββ settings.local.php
βββ .gitignore # Comprehensive Drupal .gitignore
βββ composer.json # PHP dependencies
βββ README.md # Project documentation
βββ CLAUDE.md # Claude Code guidance for this project
- Claude Code (Web or CLI)
- Composer access
- Git
- GitHub account
- Claude Code CLI (local)
- DDEV installed
- Docker installed and running
- Claude Code Web
- Can do: File operations, composer install, config editing
- Cannot do: Database operations, drush commands
| Benefit | Before | After |
|---|---|---|
| New developer onboarding | 2-4 hours (manual setup, troubleshooting) | 2 minutes (automated) |
| Environment sync | Remember drush commands, manual steps | One command |
| Project setup | Copy/paste from wiki, adapt settings | 30 seconds, consistent |
| Broken environment | Reinstall from scratch, lose local changes | One command reset |
| Team consistency | Everyone does it differently | Same workflow for all |
-
New Project Creation
- Quick Mode (default): Template-based, fast
- Full Mode (advanced): Live Drupal with SQLite
-
Existing Project Setup
- Initial setup (first time)
- Update after pull (sync environment)
- Reset environment (clean slate)
-
Environment Types
- Local CLI with DDEV (full automation)
- Web without DDEV (file operations + guidance)
- skill.md (15KB) - Main skill instructions
- init.sh (1KB) - Initialization script
- README.md (12KB) - Skill documentation
- templates/ - Production-ready templates
- settings.php - Organization settings
- gitignore - Drupal .gitignore
- ddev-config.yaml - DDEV configuration
- README.md - Project documentation
- CLAUDE.md - Claude guidance for projects
Total size: ~46KB
Planned features (see plan.md):
- DevPanel Integration - Push to GitHub β Automatic deployment
- Drupal.org Integration - Work with Drupal.org issues and GitLab branches
- Multi-environment support - Dev/staging/prod configurations
- CI/CD templates - GitHub Actions workflows
- Custom module scaffolding - Generate module boilerplate
Contributions welcome! This skill is designed to evolve with team needs.
Ideas for contributions:
- Additional Drupal variants (Drupal 10, contrib distributions)
- More template variations
- Additional common module presets
- DevPanel integration implementation
- Testing frameworks setup
See LICENSE file.
Built for efficient Drupal development with Claude Code, incorporating:
- Drupal community best practices
- DDEV local development standards
- Configuration-first development approach
- Team collaboration workflows
- Documentation: Start with INSTALL.md
- Issues: GitHub Issues
- Claude Code Docs: https://docs.claude.com/claude-code
Ready to streamline your Drupal development? Install now β