A polite and human automatic project creator for vagrant boxes.
Why Please and what is it?
This script has been created for automatically create Symfony, WordPress or even Angular2 (and more to come) projects in a Vagrant Box, by running a simple command in the terminal and answering a bunch of questions. And since command line is a bit austere, I tried to add a bit of humanity in it.
Here is what Please will do for you :
- Creating your project's folder
- Configuring the Virtual Host (e.g. my-project.dev)
- Creating a database (optional)
- Installing your framework (WordPress, Symfony, Laravel...) so you can start working quickly
Get & configure a Vagrant Box
First of all, you must install a great Vagrant Box, such as my slightly modified scotch.io box.
Why this box is better than an other one, you ask? Because it works. It's great enough for me.
$ git clone https://github.com/jehanf/please-box.git my-folder $ cd my-folder $ vagrant up
Important : for the Virtual Hosts to work properly, you must install the Vagrant Hosts Updater plugin by running this simple command :
$ vagrant plugin install vagrant-hostsupdater
Phewww, I'm sure you are exhausted now!
Very hard, once again :
$ git clone https://github.com/jehanf/please.git $ sudo chmod +x please/please $ sudo mv please/please /usr/local/bin/please && sudo rm -R please
Let me just explain the last two lines :
sudo chmod +x please/please : Makes the bash script executable.
sudo mv please/please /usr/local/bin/please && sudo rm -R please : Moves the bash script into /usr/local/bin/ folder for easy use and remove the folder downloaded via git (now only containing the readme file you are currently reading)
First, do a small :
$ please create
to start the creation of your new project, no matter what is it, I'll only ask you a couple of questions that needs to be answered.
You can also do a simple
$ please create wordpress (or replace wordpress by the correct framework you want to use).
At the moment, only the following services are available (shorthand command) :
- Simple Custom Domain (domain)
- WordPress (wordpress)
- Symfony (symfony)
- Laravel (laravel)
- Angular2 (angular2)
- Pagekit (pagekit)
- React (react)
And the second option, very easy to understand :
$ please delete
to delete a project. Same here, a couple of questions and that's it.
Whoa! It's finished!
Please, tell me what are your other options!
please --version : Display current version (that was highly unexpected.) and tells you if an update is available.