What you'll learn

Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable, creative experience to be truly fulfilling. Laravel attempts to take the pain out of development by easing common tasks used in the majority of web projects, such as authentication, routing, sessions, and caching. Laravel aims to make the development process a pleasing one for the developer without sacrificing application functionality. Happy developers make the best code. To this end, we've attempted to combine the very best of what we have seen in other web frameworks, including frameworks implemented in other languages, such as Ruby on Rails, ASP.NET MVC, and Sinatra.
CURRICULUM
Laravel Introduction and Architecture
- Intro to Laravel
- Container
- Facades
- Flexibility
- Robustness
Get started with Laravel
- Setting up Homestead
- Setting up composer and PHP on your local machine for faster Workflows
- Using .env for your local build
- Using sequel pro and connecting to local and remote databases
- Setting up your first application in Homestead
- Setting up Gulp and Elixir
Composer Packages
- Working with the composer install command and avoiding the Composer update
- Downloading and installing Guzzle using Composer
- Making a provider
- Using the Facade pattern
- Using private packages
Routing
- Building an API / JSON based route for searching
- Testing your route in PHP Unit
- Building a view based route
- Testing your view based route in PHP Unit
- Creating named routes
Building Views and Adding Style
- Organizing your Blade files
- Installing a WrapBootStrap theme
- Making your authentication pages
- Implementing an error message template
- Building your main search page
- Adding static pages
Working with Data
- Setting up users and running migrations
- Altering a migration
- Using factories for migrations and tests
- Using a generator to scaffold your user wishlist area
- Seeding so you can see how your app looks
- Adding a file upload to user profile
- Validating file upload
- Saving files to S3
Authentication, Security, and Subscriptions
- Using policies and guard to protect user pages
- Adding feature flags to hide features from users
- Implementing Socialite to allow users to login with Facebook
- Adding custom middleware to protect the user admin area
- Using Laravel to set up a subscription site
- Creating an interface for the user to manage subscriptions
- Creating an admin interface for subscriptions
Testing and Debugging Your Application
- Generating test
- Using tests to think through your code TDT (Test Driven Thinking)
- Using VCR for API testing
- Getting your code onto GitHub
- Using Travis to run tests with every push
- Launching Gulp watch into your workflow
- Using Mockery to test your controllers
- Troubleshooting your application
Adding Advanced Features
- Building an Artisan command
- Creating scheduler to notify users of new comics
- Setting up e-mail notices
- Adding clean URLs for the users profile page
- Using pusher for live notifications
- Adding a blog area to update users on new features
Deployment
- Setting up Forge, AWS, and CodeDeploy
- Setting up Travis to auto deploy when all is passing
- Working with your .env file
- Testing your application on production with Behat
- Making a composer package out of our client