Stars: 1631
Forks: 556
Pull Requests: 69
Issues: 79
Watchers: 90
Last Updated: 2023-09-10 21:05:18
Laravel 9.0 blog application with Hotwire, Homestead, Horizon, Telescope and Pusher
License: MIT License
Languages: PHP, JavaScript, Shell, Blade
The purpose of this repository is to show good development practices on Laravel as well as to present cases of use of the framework's features like:
Beside Laravel, this project uses other tools like:
You can find some screenshots of the application on : https://imgur.com/a/Jbnwj
To create your development environment follow these instructions.
Setting up your development environment on your local machine:
$ git clone https://github.com/guillaumebriday/laravel-blog.git
$ cd laravel-blog
$ cp .env.example .env
$ php artisan key:generate
$ php artisan horizon:install
$ php artisan telescope:install
$ php artisan storage:linkYou need to run the migrations with the seeds :
$ php artisan migrate --seedThis will create a new user that you can use to sign in :
email: [email protected]
password: 4nak1nAnd then, compile the assets :
$ yarn dev # or yarn watchStarting job for newsletter :
$ php artisan tinker
> PrepareNewsletterSubscriptionEmail::dispatch();Seeding the database :
$ php artisan db:seedRunning tests :
$ php artisan testRunning Laravel Pint :
$ ./vendor/bin/pint --verbose --testGenerating backup :
$ php artisan vendor:publish --provider="Spatie\Backup\BackupServiceProvider"
$ php artisan backup:runGenerating fake data :
$ php artisan db:seed --class=DevDatabaseSeederDiscover package
$ php artisan package:discoverIn development environment, rebuild the database :
$ php artisan migrate:fresh --seedClients can access to the REST API. API requests require authentication via token. You can create a new token in your user profile.
Then, you can use this token either as url parameter or in Authorization header :
# Url parameter
GET http://laravel-blog.app/api/v1/posts?api_token=your_private_token_here
# Authorization Header
curl --header "Authorization: Bearer your_private_token_here" http://laravel-blog.app/api/v1/postsAPI are prefixed by api and the API version number like so v1.
Do not forget to set the X-Requested-With header to XMLHttpRequest. Otherwise, Laravel won't recognize the call as an AJAX request.
To list all the available routes for API :
$ php artisan route:list --path=apiDo not hesitate to contribute to the project by adapting or adding features ! Bug reports or pull requests are welcome.
This project is released under the MIT license.