Convert Figma logo to code with AI

Varying-Vagrant-Vagrants logoVVV

An open source Vagrant configuration for developing with WordPress

4,537
848
4,537
117

Top Related Projects

Scotch Box is a preconfigured Vagrant Box with a full array of LAMP Stack features to get you up and running with Vagrant in no time.

2,489

WordPress LEMP stack with PHP 8.2, Composer, WP-CLI and more

Quick Overview

Varying Vagrant Vagrants (VVV) is an open-source Vagrant configuration focused on WordPress development. It provides a development environment for building and contributing to WordPress projects, themes, and plugins. VVV aims to make it easy for developers to set up a local WordPress environment with minimal configuration.

Pros

  • Pre-configured development environment with essential tools and services for WordPress
  • Supports multiple WordPress installations and custom configurations
  • Active community and regular updates
  • Includes useful developer tools like MailHog for email testing and phpMyAdmin for database management

Cons

  • Can be resource-intensive, especially on older or less powerful machines
  • Initial setup and provisioning can be time-consuming
  • Learning curve for developers new to Vagrant or virtual environments
  • Occasional compatibility issues with certain host operating systems or configurations

Getting Started

  1. Install VirtualBox and Vagrant on your system
  2. Clone the VVV repository:
    git clone https://github.com/Varying-Vagrant-Vagrants/VVV.git
    
  3. Navigate to the VVV directory:
    cd VVV
    
  4. Start the Vagrant environment:
    vagrant up
    
  5. Access your WordPress sites at http://one.wordpress.test and http://two.wordpress.test

For more detailed instructions and customization options, refer to the official VVV documentation.

Competitor Comparisons

Pros of Homestead

  • Specifically tailored for Laravel development, providing a streamlined setup
  • Includes a wide range of pre-configured tools and services for PHP development
  • Easier to set up and configure for Laravel projects

Cons of Homestead

  • Less flexible for non-Laravel PHP projects
  • May include unnecessary tools for simpler projects, potentially using more resources
  • Limited customization options compared to VVV's extensive configuration possibilities

Code Comparison

Homestead configuration (Homestead.yaml):

ip: "192.168.56.56"
memory: 2048
cpus: 2
provider: virtualbox

VVV configuration (vvv-custom.yml):

sites:
  wordpress-one:
    repo: https://github.com/WordPress/WordPress.git
    hosts:
      - one.wordpress.test

While both use YAML for configuration, Homestead focuses on Laravel-specific settings, whereas VVV allows for more detailed WordPress site configurations.

Scotch Box is a preconfigured Vagrant Box with a full array of LAMP Stack features to get you up and running with Vagrant in no time.

Pros of Scotch Box

  • Simpler setup process, ideal for beginners
  • Comes pre-configured with a wider range of development tools
  • Faster initial setup time

Cons of Scotch Box

  • Less customizable than VVV
  • Not as actively maintained or updated
  • Limited documentation compared to VVV

Code Comparison

VVV configuration example:

sites:
  wordpress-one:
    repo: https://github.com/Varying-Vagrant-Vagrants/custom-site-template.git
    hosts:
      - one.wordpress.test

Scotch Box configuration example:

Vagrant.configure("2") do |config|
  config.vm.box = "scotch/box"
  config.vm.network "private_network", ip: "192.168.33.10"
end

VVV offers more detailed configuration options for multiple sites, while Scotch Box provides a simpler setup with fewer customization options out of the box.

Both projects aim to provide a local development environment for WordPress, but they cater to different user needs. VVV is more suitable for advanced users who require a highly customizable environment, while Scotch Box is better for beginners or those who need a quick setup with minimal configuration.

2,489

WordPress LEMP stack with PHP 8.2, Composer, WP-CLI and more

Pros of Trellis

  • Faster setup and provisioning due to Ansible-based configuration
  • Better security practices with automated SSL certificate generation
  • More flexible and customizable for different hosting environments

Cons of Trellis

  • Steeper learning curve, especially for those unfamiliar with Ansible
  • Less comprehensive out-of-the-box WordPress development environment
  • Requires more manual configuration for additional tools and services

Code Comparison

VVV (Vagrantfile):

config.vm.provision :shell, path: "provision/provision.sh"
config.vm.synced_folder "www/", "/srv/www/", owner: "www-data"
config.vm.network :private_network, ip: "192.168.50.4"

Trellis (playbook.yml):

- name: WordPress Server
  hosts: web
  roles:
    - common
    - nginx
    - php
    - wordpress

The code snippets highlight the different approaches to provisioning and configuration. VVV uses a shell script and Vagrant's built-in features, while Trellis leverages Ansible roles for a more modular and flexible setup.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

VVV

Codacy Badge Average time to resolve an issue Percentage of issues still open

VVV is a local developer environment, mainly aimed at WordPress developers. It uses Vagrant and Docker/VirtualBox/Parallels/HyperV to create a linux server environment for building sites, and contributing to WordPress itself.

VVV stands for Varying Vagrant Vagrants.

How To Use

To use it, download and install Vagrant and a provider such as VirtualBox, Docker, or Parallels Pro. Then, clone this repository and run:

vagrant plugin install --local
vagrant up --provision

When it's done, visit http://vvv.test.

The online documentation contains more detailed installation instructions.

Minimum System requirements

For system requirements, please read the system requirements documentation here

Software included

For a comprehensive list, please see the list of installed packages.