A professional CLI tool for scaffolding full-stack projects with Laravel + React, WordPress, PrestaShop, Drupal, and custom PHP projects — with GitHub Copilot integration.
╦ ╦╔╦╗╦╔═╗╦╔╦╗╔═╗╦ ╦╔═╗╔═╗
╚╗╔╝ ║║║║ ╦║ ║ ╠═╣║ ║╔═╝║╣
╚╝ ═╩╝╩╚═╝╩ ╩ ╩ ╩╩═╝╩╚═╝╚═╝
Full-Stack & CMS Project Scaffolding Tool
- 🚀 Interactive Setup Wizard - Guided project creation with smart prompts
- 🎨 React + Vite Frontend - Modern, fast frontend scaffolding
- 🔧 Laravel Backend - Production-ready PHP backend via Composer
- 🌐 WordPress Support - Full site, theme-only, or plugin-only scaffolding
- 🛒 PrestaShop Support - Store, theme, or module scaffolding
- 💧 Drupal Support - Site, theme, or module scaffolding
- 🐘 Custom PHP Projects - Plain PHP, Slim, Symfony, CodeIgniter, CakePHP
- 📦 Multi-Repo Git Management - Separate repos for frontend, backend, and dist
- 🔄 Automated Push Scripts - One command to push all repositories
- ✅ System Health Check - Verify all dependencies are installed
- 🎯 Cross-Platform - Works on macOS, Linux, and Windows
- 🤖 GitHub Copilot Integration - Auto-generated instructions and dynamic prompt generation
- 🔗 Custom SSH Support - Works with any Git SSH configuration
- 📝 Copilot CLI Integration - Generate comprehensive project prompts using GitHub Copilot CLI
npm install -g @vdigitalize-cli/vdigitalize- Node.js >= 18.0.0
- npm >= 8.0.0
- Git
- PHP >= 8.1 (for Laravel, WordPress, PrestaShop, Drupal)
- Composer (for Laravel and CMS installations)
- WP-CLI (for WordPress projects)
- Drush (for Drupal projects)
- MySQL (for database setup)
- GitHub CLI (for enhanced features)
- Copilot CLI (
gh extension install github/gh-copilot) - for dynamic prompt generation
Run the doctor command to verify your setup:
vdigitalize doctorvdigitalize setupThis interactive command will guide you through:
-
Project Type Selection
- Full-Stack (Laravel + React)
- WordPress (full site, theme, or plugin)
- PrestaShop (full site, theme, or module)
- Drupal (full site, theme, or module)
- Custom PHP (Plain, Slim, Symfony, CodeIgniter, CakePHP)
-
Project Configuration
- Project name and description
- Type-specific options (theme name, plugins, modules, etc.)
-
Git Repositories (for full-stack)
- Frontend Git repo URL (supports custom SSH configs)
- Backend Git repo URL
- Frontend/dist Git repo URL
-
Additional Options
- Push script generation (full-stack)
- GitHub Copilot setup
vdigitalize doctorVerifies that all required and optional tools are installed:
Required: Node.js, npm, Git, Composer, PHP
Optional: GitHub CLI, Copilot CLI
CMS Development Tools: WP-CLI, Drush, MySQL
my-project/
├── backend/ # Laravel API (separate git repo)
│ ├── app/
│ ├── routes/
│ └── ...
├── frontend/ # React + Vite (separate git repo)
│ ├── src/
│ ├── dist/ # Production build (separate git repo)
│ └── ...
├── .github/
│ ├── copilot-instructions.md
│ └── prompts/
├── README.md
├── .gitignore
└── push.sh
Full Site:
my-wordpress/
├── wp-content/
│ ├── themes/
│ │ └── my-theme/ # Custom theme
│ └── plugins/
├── .github/
│ ├── copilot-instructions.md
│ └── prompts/
└── README.md
Theme Only:
my-theme/
├── assets/
│ ├── css/
│ ├── js/
│ └── images/
├── template-parts/
├── inc/
├── style.css
├── functions.php
├── index.php
├── header.php
├── footer.php
└── sidebar.php
Plugin Only:
my-plugin/
├── includes/
├── admin/
├── public/
├── assets/
└── my-plugin.php
Theme:
my-theme/
├── assets/
│ ├── css/
│ ├── js/
│ └── img/
├── config/
│ └── theme.yml
├── templates/
│ └── _partials/
└── modules/
Module:
my-module/
├── views/
│ ├── templates/
│ ├── css/
│ └── js/
├── controllers/
│ ├── admin/
│ └── front/
└── my-module.php
Theme:
my_theme/
├── css/
├── js/
├── images/
├── templates/
├── my_theme.info.yml
└── my_theme.libraries.yml
Module:
my_module/
├── src/
│ ├── Controller/
│ └── Form/
├── templates/
├── my_module.info.yml
├── my_module.module
└── my_module.routing.yml
my-php-project/
├── public/
│ └── index.php
├── src/
├── config/
├── views/
├── assets/
│ ├── css/
│ └── js/
├── composer.json
└── README.md
-
Installation Methods:
- WP-CLI (
wp core download) - Composer (
johnpbloch/wordpress) - Manual setup with folder structure
- WP-CLI (
-
Theme Scaffolding:
- Complete theme structure (header, footer, sidebar, template-parts)
- WordPress hooks and functions
- Asset enqueuing
- Widget areas and navigation menus
-
Plugin Scaffolding:
- OOP structure with main class
- Activation/deactivation hooks
- Admin and public views
-
Popular Plugins Installation:
- ACF (Advanced Custom Fields)
- Yoast SEO
- WooCommerce
- Contact Form 7
- Wordfence
- WP Super Cache
- Query Monitor
- Versions: 8.1, 8.0, 1.7
- Theme Configuration: Complete
theme.ymlsetup - Module Scaffolding: Hook registration, configuration pages
- Installation: Via Composer (
drupal/recommended-project) - Profiles: Standard, Minimal, Demo
- Theme Scaffolding: Libraries, regions configuration
- Module Scaffolding: Routing, controllers, services
- Popular Modules: admin_toolbar, pathauto, token, webform, metatag
VDigitalize automatically sets up GitHub Copilot configuration:
Contains project-specific instructions for GitHub Copilot:
- Project overview and description
- Tech stack details
- Code style guidelines
- Repository structure
- Prompt logging requirements
A dedicated folder for saving development prompts:
- prompt_001.md - Initial comprehensive project prompt
- Additional prompts saved during development
- Used for tracking, learning, and documentation
If GitHub Copilot CLI is installed (gh copilot), VDigitalize generates a comprehensive, dynamic project prompt based on your configuration.
To install Copilot CLI:
gh extension install github/gh-copilotIf you opted to create push.sh, push all repositories with one command:
./push.sh "Your commit message"This will:
- Build the frontend
- Commit and push the backend
- Commit and push the frontend
- Commit and push the dist folder
$ vdigitalize setup
? Select project type: Full-Stack (Laravel + React)
? What is your project name? my-awesome-app
? Frontend folder name: frontend
? Backend folder name: backend
...
✔ Laravel project created successfully
✔ Vite React project created
✔ GitHub Copilot integration configured$ vdigitalize setup
? Select project type: WordPress
? What is your project name? my-theme
? What do you want to create? Theme only
? Theme name: My Custom Theme
? Use a starter theme? Starter Theme (theme scaffolding with config)
...
✔ WordPress theme "My Custom Theme" created$ vdigitalize setup
? Select project type: PrestaShop
? What is your project name? my-module
? What do you want to create? Module only
? Module name: My Custom Module
...
✔ PrestaShop module "My Custom Module" createdThis CLI is built with:
- Commander.js - CLI framework
- Inquirer.js - Interactive prompts
- Chalk - Terminal styling
- Ora - Elegant spinners
- fs-extra - Enhanced file system
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
VDigitalize
- Website: vdigitalize.com
- GitHub: @vdigitalize
Made with ❤️ by VDigitalize