Super-powered laravel new
for Laravel and Valet.
composer global require tightenco/lambo
composer global require tightenco/lambo:"^0.4.7"
composer global update tightenco/lambo
If this doesn't get you the latest version, check the file at ~/.composer/composer.json
. If your version spec for Lambo is ^0.1.#
, change it to be ~0.1
.
Make sure ~/.composer/vendor/bin
is in your terminal's path.
cd ~/Sites
lambo superApplication
This will laravel new superApplication
, change into that directory, make an initial Git commit, and open your web browser to that app.
laravel new $PROJECTNAME
cd $PROJECTNAME
- Initialize a git repo, add all of the files, and make a commit with the text "Initial commit."
- Replace the
.env
database credentials with the default Mac MySQL credentials: database of$PROJECTNAME
, userroot
, and empty password - Replace the
.env
APP_URL
with$PROJECTNAME.$YOURVALETTLD
- Open
$PROJECTNAME.$YOURVALETTLD
in your browser
Note that, in case your $PROJECTNAME
has dashes (-
) in it, they will be replaced with underscores (_
) in the database name.
There are also a few optional behaviors based on the parameters you pass (or define in your config file).
-
-h
or--help
to get the help dialoglambo --help
-
-e
or--editor
to define your editor command. Whatever is passed here will be run as$EDITOR .
after creating the project.# runs "subl ." in the project directory after creating the project lambo superApplication --editor subl
-
-m
or--message
to set the first commit message.lambo superApplication --mess 8A19 age "This lambo runs fast!"
-
-p
or--path
to specify where to install the application.lambo superApplication --path ~/Sites
-
-q
or--quiet
use quiet/silent mode forgit
,yarn
/npm
and laravel installer. -
-d
or--dev
to choose thedevelop
branch instead ofmaster
, getting the beta installlambo superApplication --dev
-
-a
or--auth
to use Artisan to scaffold all of the routes and views you need for authenticationlambo superApplication --auth
-
-n
or--node
to runyarn
if installed, otherwise runsnpm install
after creating the projectlambo superApplication --node
-
-b
or--browser
to define which browser you want to open the project in.lambo superApplication --browser "/Applications/Google Chrome Canary.app"
-
-l
or--link
to create a Valet link to the project directory.lambo superApplication --link
-
-s
or--secure
to secure the Valet site using https.lambo superApplication --secure
-
--create-db
create a new MySql database which has the same name as your project. This requiresmysql
command to be available on your system.lambo superApplication --create-db
-
--dbuser
specify the database username.lambo superApplication --dbuser USER
-
--dbpassword
specify the database password.lambo superApplication --dbpassword SECRET
-
--vue
to set the frontend to the default Laravel 5.* scaffolding (set by default)lambo superApplication --vue
-
--bootstrap
to set the frontend to Bootstraplambo superApplication --bootstrap
-
--react
to set the frontend to Reactlambo superApplication --react
-
make-config
creates a config file so you don't have to pass the parameters every time you use Lambolambo make-config
-
edit-config
edits your config filelambo edit-config
-
make-after
creates an "after" file so you can run additional commands after Lambo finisheslambo make-after
-
edit-after
edits your after filelambo edit-after
You can create a config file at ~/.lambo/config
rather than pass the same arguments each time you create a new project.
lambo make-config
If you wish to edit your config file later on you can always use the edit command:
lambo edit-config
You can create an after file at ~/.lambo/after
to run additional commands after you create a new project.
lambo make-after
The after file is a bash script so you can include any commands here such as installing additional composer dependencies
# Install additional composer dependencies as you would from the command line.
echo "Installing Composer Dependencies"
composer require tightenco/mailthief tightenco/quicksand
or copying additional files to your new project.
# To copy standard files to new lambo project place them in ~/.lambo/includes directory.
echo "Copying Include Files"
cp -R ~/.lambo/includes/ $PROJECTPATH
You also have access to variables from your config file such as $PROJECTPATH
and $CODEEDITOR
.
- Mac or Linux.
- Git.
- Requires the Laravel installer and Laravel Valet to be globally installed.
A Linux fork of Valet can be found here
Inspired by Taylor Otwell and Adam Wathan's work on Valet.
Name from TJ Miller, inspired by Taylor's love for the lambo.