This is the repository for the Laravel.io community portal. The code is entirely open source and licensed under the MIT license. We welcome your contributions but we encourage you to read the the contributing guide before creating an issue or sending in a pull request. Read the installation guide below to get started with setting up the app on your machine.
We'd like to thank these amazing companies for sponsoring us. If you are interested in becoming a sponsor, please visit the Laravel.io Github Sponsors page.
- Scout APM
The following tools are required in order to start the installation.
Note that you're free to adjust the
~/Sites/laravel.iolocation to any directory you want on your machine. In doing so, be sure to run the
valet linkcommand inside the desired directory.
- Clone this repository with
git clone [email protected]:laravelio/laravel.io.git ~/Sites/laravel.io
composer installto install the PHP dependencies
- Set up a local database called
composer setupto setup the application
- Set up a working e-mail driver like Mailtrap
valet linkto link the site to a testing web address
- Configure the (optional) features from below
You can now visit the app in your browser by visiting http://laravel.io.test. If you seeded the database you can login into a test account with
Github Authentication (optional)
To get Github authentication to work locally, you'll need to register a new OAuth application on Github. Use
http://laravel.io.test for the homepage url and
http://laravel.io.test/auth/github for the callback url. When you've created the app, fill in the ID and secret in your
.env file in the env variables below. You should now be able to authentication with Github.
Algolia Search (optional)
To get Algolia search running locally, you'll need to register for a new account and create an index called
threads. Algolia has a free tier which satisfies all of the requirements needed for a development environment. Now update the below variables in your
.env file. The App ID and secret keys can be found in the
API Keys section of the Algoila UI.
ALGOLIA_SECRET="Use the Write API Key"
MIX_ALGOLIA_SECRET="Use the Search API Key"
In order to index your existing threads, run the following command:
php artisan scout:import App\\Models\\Thread
New threads will be automatically added to the index and threads which get edited will be automatically updated. If you need to flush your index and start again, you can run the following command:
php artisan scout:flush App\\Models\\Thread
Twitter Sharing (optional)
To enable published articles to be automatically shared to on Twitter, you'll need to create a Twitter app. Once the app has been created, update the below variables in your
.env file. The consumer key and secret and access token and secret can be found in the
Keys and tokens section of the Twitter developers UI.
Approved articles are shared in the order they were submitted for approval. Articles are shared twice per day at 14:00 and 18:00 UTC. Once an article has been shared, it will not be shared again.
php artisan test --parallel
|Run the tests
php artisan migrate:fresh --seed
|Reset the database
npm run watch
|Watch for changes in CSS and JS files
Please read the contributing guide before creating an issue or sending in a pull request.
Code of Conduct
Please read our Code of Conduct before contributing or engaging in discussions.
If you discover a security vulnerability within Laravel.io, please send an email immediately to [email protected]. Do not create an issue for the vulnerability.
The MIT License. Please see the license file for more information.