# Rails Tutorial: First steps

Application structure

The Application structure resembles a normal Rails 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     [+]
├── .gitignore
├── Gemfile
├── Gemfile.lock
├── README.md
├── Rakefile
├── app
├── bin
├── bower.json   [+]
├── config
├── config.ru
├── db
├── lib
├── log
├── node_modules [+]
├── package.json [+]
├── public
├── sass         [+]
├── src          [+]
├── test
├── tmp
├── 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.
  • package.json is a file that contains all packages managed by NPM.
  • node_modules is a folder created by NPM which has all the Node modules installed.
  • src folder contains all the client-side Rubix source code.
  • sass folder contains all the client-side Rubix SASS files.
  • tools folder has config files required by Webpack development server to compile the source files defined in the src folder.