This is a Laravel starter project that includes a comprehensive setup with Docker, Laravel Sail, and various packages to get you started quickly on any project. It includes:
- Laravel Sail with Docker support
- Mailpit for email testing
- MySQL for database
- PhpMyAdmin for database management
- Redis for caching
- Spatie packages for settings, SEO, media library, and permissions
- Filament PHP for admin panel
-
Laravel Sail: A light-weight command-line interface for interacting with Laravel's default Docker development environment. It provides a simple way to set up and manage a local development environment using Docker.
- Mailpit: Local email testing.
- MySQL: Database management.
- PhpMyAdmin: Web interface for MySQL.
- Redis: Advanced key-value store.
-
Spatie Packages:
- Media Library: Associate files with Eloquent models.
- Settings: Manage application settings.
- Laravel Translatable: Make Eloquent models translatable.
- Laravel Sluggable: Generate slugs for Eloquent models.
- Permission: Manage user permissions and roles.
- Activity Log: Log activity in your application.
- Laravel Backup: Backup your application.
- Image: Manipulate images.
- Laravel Tags: Add tags to Eloquent models.
- Laravel Searchable: Make Eloquent models searchable.
- Enum: Provides support for creating and using enums in PHP.
-
Laravel Debugbar: Integrates PHP Debug Bar with Laravel.
-
Laravel Telescope: An elegant debug assistant for Laravel applications.
-
Laravel IDE Helper: Generates a PHPDoc block for Laravel facades.
-
Laravel Socialite: Provides an expressive, fluent interface to OAuth authentication.
-
Laravel Tinker: Powerful REPL for the Laravel framework.
-
Laravel Seo: A package to handle the SEO in any Laravel application, big or small.
-
Filament PHP: A beautiful, modern, and customizable admin panel for Laravel applications.
- User Management: Manage users and roles.
- Settings: Manage application settings.
- Activity Log: View activity logs.
- Media Library: Manage media files.
- Permissions: Manage user permissions.
- SEO: Manage SEO settings.
- Tags: Manage tags.
- Translations: Manage translations.
- Backup: Backup the application.
- Docker
- PHP 8.2 or Higher
- Docker Compose
- Composer
- Node.js and npm
-
Clone the repository:
git clone https://github.com/abdessamadbettal/laravel-starter.git cd laravel-starter
-
Copy the example environment file and configure it:
cp .env.example .env
-
Install PHP dependencies:
composer install
-
Install Node.js dependencies:
npm install
-
Generate application key:
php artisan key:generate
-
Start Docker containers:
sail up -d
-
Run database migrations:
sail artisan migrate:fresh --seed
- Access the application: http://localhost
- PhpMyAdmin: http://localhost:8080
- Mailpit: http://localhost:8025
- Access the admin panel: http://localhost/admin
- Default Admin User Credentials:
- Email:
admin@example.com
- Password:
password
- Email:
Feel free to submit issues or pull requests.
This project is open-sourced software licensed under the MIT license.