Laravel.io
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 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.
Sponsors
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.
Eventy Forge Envoyer Fathom Tinkerwell Skynet Technologies Backpack for Laravel Localazy Steadfast Collective BairesDev Laradir Remotely WorksRequirements
The following tools are required in order to start the installation.
PHP 8.3 Composer NPM ValetInstallation
Clone this repository withNote that you're free to adjust the
~/Sites/laravel.io
location to any directory you want on your machine. In doing so, be sure to run thevalet link
command inside the desired directory.
git clone git@github.com:laravelio/laravel.io.git ~/Sites/laravel.io
Run composer install
to install the PHP dependencies
Set up a local database called laravel
Run composer setup
to setup the application
Set up a working e-mail driver like Mailtrap
Run valet link
to 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 testing
& password
.
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.
GITHUB_ID=
GITHUB_SECRET=
GITHUB_URL=http://laravel.io.test/auth/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 that 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.
SCOUT_DRIVER=algolia
SCOUT_QUEUE=true
ALGOLIA_APP_ID=
ALGOLIA_SECRET="Use the Write API Key"
VITE_ALGOLIA_APP_ID="${ALGOLIA_APP_ID}"
VITE_ALGOLIA_SECRET="Use the Search API Key"
VITE_ALGOLIA_THREADS_INDEX=threads
VITE_ALGOLIA_ARTICLES_INDEX=articles
VITE_ALGOLIA_USERS_INDEX=users
In order to index your existing threads, run the following command:
php artisan scout:import AppModelsThread
New threads will be automatically added to the index and threads which get updated will be automatically synced. If you need to flush your index and start again, you can run the following command:
php artisan scout:flush AppModelsThread
Twitter Sharing (optional)
To enable published articles to be automatically shared 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.
TWITTER_CONSUMER_KEY=
TWITTER_CONSUMER_SECRET=
TWITTER_ACCESS_TOKEN=
TWITTER_ACCESS_SECRET=
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.
Telegram Notifications (optional)
Laravel.io can notify maintainers of newly submitted articles through Telegram. For this to work, you'll need to set up a Telegram bot and obtain a token. Then, configure the channel you want to send new article messages to.
TELEGRAM_BOT_TOKEN=
TELEGRAM_CHANNEL=
Fathom Analytics (optional)
To enable view counts on articles, you'll need to register a Fathom Analytics account and install it on the site. You will then need to create an API token and find your site ID before updating the below environment variables in your .env
file.
FATHOM_SITE_ID=
FATHOM_TOKEN=
Commands
Command | Description |
---|---|
vendor/bin/pest -p |
Run the tests with parallel execution |
php artisan migrate:fresh --seed |
Reset the database |
npm run dev |
Build and watch for changes in CSS and JS files |
Maintainers
The Laravel.io portal is currently maintained by Dries Vints and Joe Dixon. If you have any questions please don't hesitate to create an issue on this repo.
Contributing
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.
Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
License
The MIT License. Please see the license file for more information.
版权声明:
1、该文章(资料)来源于互联网公开信息,我方只是对该内容做点评,所分享的下载地址为原作者公开地址。2、网站不提供资料下载,如需下载请到原作者页面进行下载。
3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考学习用!
4、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。