Convert Figma logo to code with AI

scotch-io logoscotch-box

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,702
547
2,702
43

Top Related Projects

26,159

Vagrant is a tool for building and distributing development environments.

3,833

Vagrant/Puppet GUI

2,489

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

A VM for Drupal development

4,537

An open source Vagrant configuration for developing with WordPress

Quick Overview

Scotch Box is a pre-configured Vagrant Box with a full array of LAMP Stack features to get you up and running with Vagrant in no time. It's a popular development environment that aims to match the production server setup as closely as possible, making it easier for developers to work on their projects locally.

Pros

  • Easy setup and configuration for a full LAMP stack environment
  • Includes a wide range of pre-installed tools and technologies (PHP, MySQL, Node.js, Ruby, etc.)
  • Regularly updated to include the latest versions of software
  • Well-documented and supported by an active community

Cons

  • May include more tools than necessary for some projects, potentially leading to bloat
  • Customization can be challenging for users unfamiliar with Vagrant
  • Some users report occasional performance issues, especially on older hardware
  • Not as lightweight as some alternative development environments

Getting Started

  1. Install VirtualBox and Vagrant on your machine.
  2. Open a terminal and run:
git clone https://github.com/scotch-io/scotch-box.git my-project
cd my-project
vagrant up
  1. Once the setup is complete, you can access your project at http://192.168.33.10/.

  2. To SSH into the Vagrant box, use:

vagrant ssh
  1. Your project files will be in the /var/www directory inside the Vagrant box, which is synced with the project folder on your host machine.

Competitor Comparisons

Pros of Homestead

  • Specifically tailored for Laravel development, providing optimal configuration
  • Regular updates and maintenance by the Laravel team
  • Extensive documentation and community support

Cons of Homestead

  • Larger resource footprint, potentially slower on older hardware
  • Steeper learning curve for beginners unfamiliar with Vagrant

Code Comparison

Homestead (Vagrantfile):

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
    config.vm.box = HOMESTEAD_BOX_VERSION
    config.vm.hostname = "homestead"
    config.vm.provider "virtualbox" do |vb|
        vb.name = settings["name"] ||= "homestead"
    end
end

Scotch Box (Vagrantfile):

Vagrant.configure("2") do |config|
    config.vm.box = "scotch/box"
    config.vm.network "private_network", ip: "192.168.33.10"
    config.vm.hostname = "scotchbox"
    config.vm.synced_folder ".", "/var/www", :mount_options => ["dmode=777", "fmode=666"]
end

Both repositories provide Vagrant-based development environments, but Homestead is more focused on Laravel development, while Scotch Box offers a more general-purpose LAMP stack. Homestead benefits from official Laravel support and frequent updates, making it ideal for Laravel projects. Scotch Box, on the other hand, may be easier for beginners to set up and use, with a lighter resource footprint. The choice between the two depends on project requirements and developer preferences.

26,159

Vagrant is a tool for building and distributing development environments.

Pros of Vagrant

  • More flexible and customizable, allowing users to create and configure any type of development environment
  • Supports multiple providers (VirtualBox, VMware, AWS, etc.), not limited to a single virtualization platform
  • Actively maintained with regular updates and a large community for support

Cons of Vagrant

  • Steeper learning curve, requiring more configuration and setup compared to Scotch Box
  • May require more system resources as it's not optimized for a specific development stack

Code Comparison

Scotch Box (Vagrantfile):

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

Vagrant (basic Vagrantfile):

Vagrant.configure("2") do |config|
  config.vm.box = "ubuntu/bionic64"
  config.vm.network "private_network", ip: "192.168.33.10"
  config.vm.provision "shell", path: "bootstrap.sh"
end

The Scotch Box Vagrantfile is simpler and pre-configured, while the Vagrant example shows more customization options, including provisioning with a shell script.

3,833

Vagrant/Puppet GUI

Pros of PuPHPet

  • Highly customizable: Allows users to configure their development environment with a wide range of options
  • Web-based interface: Provides an easy-to-use GUI for creating custom Vagrant configurations
  • Supports multiple operating systems: Offers configurations for various Linux distributions and Windows

Cons of PuPHPet

  • Steeper learning curve: Requires more knowledge to set up and configure compared to Scotch Box
  • Less frequently updated: May not include the latest software versions as quickly as Scotch Box
  • Potentially slower setup: The customization process can take longer than using a pre-configured box

Code Comparison

PuPHPet (config.yaml):

vagrantfile:
    vm:
        provider:
            virtualbox:
                modifyvm:
                    natdnshostresolver1: on
                    memory: 2048
                    cpus: 2

Scotch Box (Vagrantfile):

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

Both repositories provide Vagrant configurations, but PuPHPet uses a YAML file for more detailed customization, while Scotch Box offers a simpler Ruby-based Vagrantfile with pre-configured settings.

2,489

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

Pros of Trellis

  • More focused on WordPress development with built-in optimizations
  • Ansible-based provisioning for better scalability and maintainability
  • Supports multiple environments (development, staging, production)

Cons of Trellis

  • Steeper learning curve, especially for those unfamiliar with Ansible
  • Requires more configuration and setup compared to Scotch Box
  • Less suitable for general-purpose PHP development

Code Comparison

Trellis (Ansible playbook example):

- name: Install WordPress
  command: wp core install
  args:
    chdir: "{{ www_root }}/{{ item.key }}/current/"
  with_dict: "{{ wordpress_sites }}"

Scotch Box (Vagrantfile example):

Vagrant.configure("2") do |config|
  config.vm.box = "scotch/box"
  config.vm.network "private_network", ip: "192.168.33.10"
  config.vm.synced_folder ".", "/var/www", :mount_options => ["dmode=777", "fmode=666"]
end

Trellis focuses on WordPress-specific provisioning using Ansible, while Scotch Box provides a more general-purpose LAMP stack environment using Vagrant. Trellis offers better scalability and environment management, but requires more setup and knowledge. Scotch Box is simpler to use but less optimized for WordPress development.

A VM for Drupal development

Pros of drupal-vm

  • More focused on Drupal development, with specific tools and configurations
  • Highly customizable with extensive configuration options
  • Actively maintained with frequent updates and community support

Cons of drupal-vm

  • Steeper learning curve due to more complex configuration
  • Requires more system resources due to additional features
  • May be overkill for simple Drupal projects or beginners

Code Comparison

drupal-vm:

drupal_core_path: "/var/www/drupal"
drupal_domain: "drupalvm.test"
drupal_site_name: "Drupal"
drupal_install_profile: standard
drupal_enable_modules: [ ]

scotch-box:

config.vm.network "private_network", ip: "192.168.33.10"
config.vm.hostname = "scotchbox"
config.vm.synced_folder ".", "/var/www", :mount_options => ["dmode=777", "fmode=666"]

The code snippets show that drupal-vm is more focused on Drupal-specific configurations, while scotch-box provides a more general-purpose development environment. drupal-vm allows for detailed Drupal setup, whereas scotch-box offers simpler networking and file sharing options.

4,537

An open source Vagrant configuration for developing with WordPress

Pros of VVV

  • More comprehensive and feature-rich development environment
  • Better suited for WordPress development with built-in tools and configurations
  • Active community support and regular updates

Cons of VVV

  • Steeper learning curve due to its complexity
  • Requires more system resources compared to Scotch Box
  • Initial setup and provisioning can be slower

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 granular control over site configurations, while Scotch Box provides a simpler setup process. VVV's YAML-based configuration allows for multiple sites and custom host settings, whereas Scotch Box uses a more straightforward Ruby-based Vagrantfile.

Both projects aim to simplify local development environments, but VVV is more tailored for WordPress development, while Scotch Box offers a more general-purpose solution. VVV's complexity may be beneficial for larger projects or teams requiring more customization, while Scotch Box's simplicity makes it ideal for quick setups and smaller projects.

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

Scotch Box

GET SCOTCH BOX PRO

TUTORIAL

Just a Dead-Simple Local LAMP/LEMP Stack for Vagrant. Making Vagrant EASY AS EATING CAKE for developers.

Scotch Box

Scotch Box is a pre-configured Vagrant Box with a full array of features to get you up and running with Vagrant in no time.

Scotch Box 3.5!

3.5 is finally here!

  • Ubuntu 16.04!
  • PHP 7!
  • MySQL 5.7!
  • NGNIX Option!
  • Go lang in the box
  • PHPUnit in the box
  • Yarn
  • Improved email catching with MailHog
  • Vagrant Share working nicely finally
  • The box's build scripts
  • Customize your own boxes in minutes
  • Generally higher versions of things (Node.js, Ruby, etc.)!

License Required?!!!!?!

Still MIT License for the free version. The free version is still a beast.

Pro will help support the project, let you customize some things a bit more, and will help this project survive. If you're super pissed about this, in school, working for good causes, or hurting for cash, then email me at nick@scotch.io so I can get you setup with Pro no charge.

"Scotch Box Pro" is a paid version of the original Scotch Box. Go Pro Now!

Pro Features

  • NEW OS: Ubuntu-17.10!
  • NEW PHP: PHP 7.2!
  • NEW APACHE: 2.4.29
  • NEW NGINX: 1.13.8
  • NEW RUBY via RVM: 2.5.0
  • NEW NODE via NVM: 8.9.4
  • NEW BUILD SCRIPTS
  • Fixes a MongoDB and PHP bug
  • Makes Laravel routing finally work out of the box with NGINX version
  • Adds Drush (Launcher) even though you should do this through Composer these days
  • Updated WP-CLI version
  • Generally WAY higher versions of everything else

Scotch Box

Documentation

WPDistillery

WPDistillery Logo

WPDistillery is an amazing tool by Flurin Dürst that kickstarts your WordPress installation on Scotch Box. It is actively maintained, has lots of features and gets you started in less than 5 minutes.

All you have to do is clone the repo, customize the configuration file to your needs, and vagrant up. WPDistillery will do the rest:

WPDistillery Preview

To get started, visit wpdistillery.org or check out the Documentation.

More Information

Check-out box.scotch.io to learn more.

Special Thank You

Thanks to anyone who has supported this project.

I was dark on this project for a little bit too long, as I got caught up with work and a million other things. I apologize for slowness to release updates. I'm hoping the Pro version can create a bit more motivation to dedicate time to this. I also finally have the build scripts available for download with the Pro version so you all can start addressing bugs yourselves with your own personalized boxes.

Thanks to the community for bug fixes and provisioning tips. Special shout-out to @maxpou for completely killing it with community responses.