# Laravel Tutorial: First steps

Application structure

The Application structure resembles a normal Laravel 5.1 LTS app structure with a few extra files/folders that are used for building React code. The new files/folders are marked with a [+] symbol next to it.


.
├── .babelrc        [+]
├── .bowerrc        [+]
├── .env
├── .env.example
├── .gitattributes
├── .gitignore
├── Homestead.yaml
├── Vagrantfile
├── after.sh        [+]
├── app
├── artisan
├── bootstrap
├── bower.json      [+]
├── composer.json
├── composer.lock
├── config
├── database
├── deploy.sh       [+]
├── gulpfile.js
├── node_modules
├── package.json
├── phpspec.yml
├── phpunit.xml
├── public
├── readme.md
├── resources
├── sass
├── server.php
├── src             [+]
├── storage
├── tests
├── tools           [+]
└── vendor

Here is a quick description of the extra files/folders included in the Laravel starter kit:

  • .babelrc is a settings file used by Babel compiler (used for transforming React code to Javascript code).
  • .bowerrc is a settings file for Bower - client javascript package manager.
  • bower.json is a file that contains all packages managed by Bower.
  • after.sh is a bash script file that is executed when you spawn your Virtual Machine by running vagrant up. This script file installs react-php-v8js which is used by the Laravel backend to render your client code server-side.
  • deploy.sh is a bash script used during deployment of the Laravel app to Forge.
  • src folder contains all the client-side Rubix source code and SASS files.
  • tools folder has config files required by Webpack development server to compile the source files defined in the src folder.