Prologue
Release Notes
- Support Policy
- Laravel 5.3
- Laravel 5.2
- Laravel 5.1.11
- Laravel 5.1.4
- Laravel 5.1
- Laravel 5.0
- Laravel 4.2
- Laravel 4.1
Upgrade Guide
- Upgrading To 5.3.0 From 5.2
- Upgrading To 5.2.0 From 5.1
- Upgrading To 5.1.11
- Upgrading To 5.1.0
- Upgrading To 5.0.16
- Upgrading To 5.0 From 4.2
- Upgrading To 4.2 From 4.1
- Upgrading To 4.1.29 From <= 4.1.x
- Upgrading To 4.1.26 From <= 4.1.25
- Upgrading To 4.1 From 4.0
Contribution Guide
- Bug Reports
- Core Development Discussion
- Which Branch?
- Security Vulnerabilities
- Coding Style
- Getting Started
Installation
- Installation
- Web Server Configuration
Configuration
- Introduction
- Accessing Configuration Values
- Environment Configuration
- Configuration Caching
- Maintenance Mode
Directory Structure
- Introduction
- The Root Directory
- The App Directory
Errors & Logging
- Introduction
- Configuration
- The Exception Handler
- HTTP Exceptions
- Logging
- Dev Environments
Laravel Homestead
- Introduction
- Installation & Setup
- Daily Usage
- Network Interfaces
- Updating Homestead
- Old Versions
Laravel Valet
- Introduction
- Installation
- Serving Sites
- Sharing Sites
- Viewing Logs
- Custom Valet Drivers
- Other Valet Commands
- Core Concepts
Service Container
- Introduction
- Binding
- Resolving
- Container Events
Service Providers
- Introduction
- Writing Service Providers
- Registering Providers
- Deferred Providers
Facades
- Introduction
- When To Use Facades
- How Facades Work
- Facade Class Reference
Contracts
- Introduction
- When To Use Contracts
- How To Use Contracts
- Contract Reference
- The HTTP Layer
Routing
- Basic Routing
- Route Parameters
- Named Routes
- Route Groups
- Route Model Binding
- Form Method Spoofing
- Accessing The Current Route
Middleware
- Introduction
- Defining Middleware
- Registering Middleware
- Middleware Parameters
- Terminable Middleware
CSRF Protection
- Introduction
- Excluding URIs From CSRF Protection
- X-CSRF-TOKEN
- X-XSRF-TOKEN
Controllers
- Introduction
- Basic Controllers
- Controller Middleware
- Resource Controllers
- Dependency Injection & Controllers
- Route Caching
HTTP Requests
- Accessing The Request
- Retrieving Input
HTTP Responses
- Creating Responses
- Redirects
- Other Response Types
- Response Macros
HTTP Session
- Introduction
- Using The Session
- Adding Custom Session Drivers
Validation
- Introduction
- Validation Quickstart
- Form Request Validation
- Manually Creating Validators
- Working With Error Messages
- Available Validation Rules
- Conditionally Adding Rules
- Validating Arrays
- Custom Validation Rules
- Views & Templates
Views
- Creating Views
- Passing Data To Views
- View Composers
Blade Templates
- Introduction
- Template Inheritance
- Displaying Data
- Control Structures
- Including Sub-Views
- Stacks
- Service Injection
- Extending Blade
Localization
- Introduction
- Retrieving Language Lines
- Overriding Package Language Files
- JavaScript & CSS
JavaScript & CSS
- Introduction
- Writing CSS
- Writing JavaScript
Compiling Assets (Laravel Elixir)
- Introduction
- Installation & Setup
- Running Elixir
- Working With Stylesheets
- Working With Scripts
- Copying Files & Directories
- Versioning / Cache Busting
- BrowserSync
- Security
Authentication
- Introduction
- Authentication Quickstart
- Manually Authenticating Users
- HTTP Basic Authentication
- Adding Custom Guards
- Adding Custom User Providers
- Events
Authorization
- Introduction
- Gates
- Creating Policies
- Writing Policies
- Authorizing Actions Using Policies
Resetting Passwords
- Introduction
- Database Considerations
- Routing
- Views
- After Resetting Passwords
- Customization
API Authentication (Passport)
- Introduction
- Installation
- Configuration
- Issuing Access Tokens
- Password Grant Tokens
- Implicit Grant Tokens
- Client Credentials Grant Tokens
- Personal Access Tokens
- Protecting Routes
- Token Scopes
- Consuming Your API With JavaScript
- Events
Encryption
- Introduction
- Configuration
- Using The Encrypter
Hashing
- Introduction
- Basic Usage
- General Topics
Event Broadcasting
- Introduction
- Concept Overview
- Defining Broadcast Events
- Authorizing Channels
- Broadcasting Events
- Receiving Broadcasts
- Presence Channels
- Notifications
Cache
- Configuration
- Cache Usage
- Cache Tags
- Adding Custom Cache Drivers
- Events
Events
- Introduction
- Registering Events & Listeners
- Defining Events
- Defining Listeners
- Queued Event Listeners
- Firing Events
- Event Subscribers
Filesystem / Cloud Storage
- Introduction
- Configuration
- Obtaining Disk Instances
- Retrieving Files
- Storing Files
- Deleting Files
- Directories
- Custom Filesystems
- Introduction
- Generating Mailables
- Writing Mailables
- Sending Mail
- Mail & Local Development
- Events
Notifications
- Introduction
- Creating Notifications
- Sending Notifications
- Mail Notifications
- Database Notifications
- Broadcast Notifications
- SMS Notifications
- Slack Notifications
- Notification Events
- Custom Channels
Queues
- Introduction
- Creating Jobs
- Dispatching Jobs
- Running The Queue Worker
- Supervisor Configuration
- Dealing With Failed Jobs
- Job Events
- Database
Database: Getting Started
- Introduction
- Running Raw SQL Queries
- Database Transactions
Database: Query Builder
- Introduction
- Retrieving Results
- Selects
- Raw Expressions
- Joins
- Unions
- Where Clauses
- Ordering, Grouping, Limit, & Offset
- Conditional Clauses
- Inserts
- Updates
- Deletes
- Pessimistic Locking
Pagination
- Introduction
- Basic Usage
- Displaying Pagination Results
- Customizing The Pagination View
- Paginator Instance Methods
Database: Migrations
- Introduction
- Generating Migrations
- Migration Structure
- Running Migrations
- Tables
- Columns
- Indexes
Database: Seeding
- Introduction
- Writing Seeders
- Running Seeders
Redis
- Introduction
- Interacting With Redis
- Pub / Sub
- Eloquent ORM
Eloquent: Getting Started
- Introduction
- Defining Models
- Retrieving Models
- Retrieving Single Models / Aggregates
- Inserting & Updating Models
- Deleting Models
- Query Scopes
- Events
Eloquent: Relationships
- Introduction
- Defining Relationships
- Querying Relations
- Eager Loading
- Inserting & Updating Related Models
- Touching Parent Timestamps
Eloquent: Collections
- Introduction
- Available Methods
- Custom Collections
Eloquent: Mutators
- Introduction
- Accessors & Mutators
- Date Mutators
- Attribute Casting
Eloquent: Serialization
- Introduction
- Serializing Models & Collections
- Hiding Attributes From JSON
- Appending Values To JSON
- Artisan Console
Console Commands
- Introduction
- Writing Commands
- Defining Input Expectations
- Command I/O
- Registering Commands
- Programatically Executing Commands
Task Scheduling
- Introduction
- Defining Schedules
- Task Output
- Task Hooks
- Testing
Testing
- Introduction
- Environment
- Creating & Running Tests
Application Testing
- Introduction
- Interacting With Your Application
Database Testing
- Introduction
- Resetting The Database After Each Test
- Writing Factories
- Using Factories
Mocking
- Introduction
- Events
- Jobs
- Mail Fakes
- Notification Fakes
- Facades
- Official Packages
Laravel Cashier
- Introduction
- Configuration
- Subscriptions
- Subscription Trials
- Handling Stripe Webhooks
- Handling Braintree Webhooks
- Single Charges
- Invoices
Envoy Task Runner
- Introduction
- Writing Tasks
- Running Tasks
- Notifications
API Authentication (Passport)
- Introduction
- Installation
- Configuration
- Issuing Access Tokens
- Password Grant Tokens
- Implicit Grant Tokens
- Client Credentials Grant Tokens
- Personal Access Tokens
- Protecting Routes
- Token Scopes
- Consuming Your API With JavaScript
- Events
Laravel Scout
- Introduction
- Installation
- Configuration
- Indexing
- Searching
- Custom Engines
- Appendix
Collections
- Introduction
- Available Methods
- Method Listing
Helper Functions
- Introduction
- Available Methods
- Method Listing
- Arrays
- Paths
- Strings
- URLs
- Miscellaneous
Package Development
- Introduction
- Service Providers
- Routing
- Resources
- Public Assets
- Publishing File Groups