Skip to content

Matoor95/laravel.sn

 
 

Repository files navigation

Laravel Senegal community logo with isometric design in Senegalese flag colors.


Installation

This is a regular Laravel application; it's built on top of Laravel 12 and uses :

In terms of local development, you can use the following requirements:

  • PHP 8.2^
  • Node.js 16 or more recent
  • sqlite as database

If you have these requirements, you can start by cloning the repository and installing the dependencies:

git clone https://github.com/Laravel-SN-Community/laravel.sn

cd laravel.sn

git checkout -b feature/your-feature # or fix/your-fix

Don't push directly to the main or dev branch. Instead, create a new branch and push it to your branch.

Next, install the dependencies using Composer and NPM:

composer install

npm install

After that, set up your .env file:

cp .env.example .env

php artisan key:generate

Prepare your database and run the migrations:

php artisan migrate

Link the storage to the public folder:

php artisan storage:link

In a separate terminal, build the assets in watch mode:

npm run dev

Create a admin user for the Filament admin panel:

php artisan make:filament-user

Finally, start the development server:

php artisan serve

Create GEMINI_API_KEY in your .env file to enable AI features.

You can now access the application at http://localhost:8000 and the admin panel at http://localhost:8000/admin.

Note: By default, emails are sent to the log driver. You can change this in the .env file to something like mailtrap.

Once you are done with the code changes, be sure to run the test suite to ensure everything is still working:

composer test

If everything is green, push your branch and create a pull request:

git commit -am "Your commit message"

git push

Visit github.com/Laravel-SN-Community/laravel.sn/pulls and create a pull request.

Tooling

Laravel.sn uses a few tools to ensure the code quality and consistency. Of course, Pest is the testing framework of choice, and we also use PHPStan for static analysis.

In terms of code style, we use Laravel Pint to ensure the code is consistent and follows the Laravel conventions.

You run these tools individually using the following commands:

# Lint the code using Pint
composer lint
composer test:lint

# Run PHPStan
composer test:types

# Run the test suite
composer test:unit

# Run all the tools
composer test

Production

Laravel.sn is hosted on DigitalOcean and uses Laravel Forge to manage the server and deployments.

Licence

this is an open-sourced software licensed under the GNU Affero General Public License

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Blade 56.4%
  • PHP 43.2%
  • Other 0.4%