Laravel Development Checklist
Created by Cheli
A practical checklist for setting up, building, testing, and deploying a Laravel application.
Please sign in before starting payment and download.
Checklist Items (22)
Setup Environment
Ensure your local machine has the required software.
Install PHP 8.2+ and Composer
Follow the official PHP installer for your OS and verify with php -v and composer -v.
Set up a local development server (Valet, Laravel Sail, or XAMPP)
Choose a server that matches your workflow; Valet for macOS, Sail for Docker, XAMPP for Windows.
Install Node.js and npm
Required for compiling assets with Mix or Vite.
Project Initialization
Create a new Laravel project and configure base settings.
Create project via Composer
Run composer create-project laravel/laravel project-name
Copy .env.example to .env and set app key
Then run php artisan key:generate
Test database connection
Run php artisan migrate to ensure DB works
Configuration
Adjust environment and services config.
Configure database connection in .env
Set DB_HOST, DB_PORT, DB_DATABASE, DB_USERNAME, DB_PASSWORD
Set mail driver (e.g., SMTP, Mailtrap)
Configure MAIL_HOST, MAIL_PORT, MAIL_USERNAME, MAIL_PASSWORD, MAIL_ENCRYPTION
Choose cache and queue drivers
For local dev use file/database; for production consider Redis or Amazon SQS
Database Design
Plan tables, relationships, and seed data.
Create migration files for each table
Use php artisan make:migration create_table_name
Define foreign keys and relationships in migrations
Use $table->foreignId()->constrained()->onDelete('cascade')
Seed initial data with factories and seeders
Run php artisan db:seed after migrations
Routing & Controllers
Define routes and controller logic.
Define web routes in routes/web.php
Use Route::get, Route::post, Route::resource for CRUD
Define API routes in routes/api.php
Apply middleware 'api' and version if needed
Generate controllers with artisan make:controller
Use --resource for RESTful controllers
Views & Blade
Build UI with Blade templating.
Create Blade templates in resources/views
Extend layouts and yield sections
Use components and slots for reusable UI
php artisan make:component Alert
Handle forms with old() and CSRF protection
Add @csrf and value="{{ old('field') }}"
Testing
Write and run tests to ensure quality.
Write unit tests for models
Use RefreshDatabase trait and factory states
Write feature tests for HTTP routes
Test JSON responses and redirects
Deployment & CI/CD
Prepare for production and automate pipelines.
Configure production .env
Disable debug, set proper APP_URL, cache config
Set up GitHub Actions for CI
Run composer install, phpunit, and lint on push