Contribution Guide
Thanks for contributing to Wirechat! We're excited to have you help improve the project. Here's how to get started:
Setting up your environment
Use an existing Laravel project or create a new one. For new projects, you may choose livewire with your preferred authentication starter kit.
laravel new wirechat
cd wirechat
Set up WebSockets and broadcasting (using Reverb):
php artisan install:broadcasting
php artisan reverb:start
Note: The install:broadcasting command may prompt you to install Laravel Reverb and the necessary front-end packages like Echo. Accept these if you don't already have a WebSocket server set up.
In a separate terminal window, run:
php artisan queue:work --queue=messages,default
Then start your development servers:
composer dev
Installing Wirechat
Clone the Wirechat repository inside your Laravel test application:
git clone https://github.com/wirechat/wirechat.git
Add the local package as a path repository in your Laravel application's composer.json:
"repositories": [
{
"type": "path",
"url": "/wirechat",
"options": {
"symlink": true
}
}
]
Require the local package, then run the installer and migrations:
composer require wirechat/wirechat:@dev
php artisan wirechat:install
php artisan migrate
After this setup, you can visit the /chats route to start conversations, send messages, and more.
Making Changes
Create a new branch prefixed with feat/ or fix/ for your work. Once you're done making changes, run the tests to make sure everything still works as expected:
composer install
composer test
Then commit your changes, push to your branch, and open a pull request on GitHub. Provide a clear title and a detailed description of your changes, and reference any related issues.
Reporting Bugs and Suggesting Features
If you've found a bug or have a suggestion for a new feature, please open an issue on GitHub.
Thank you for contributing!