Skip to content

bambamboole/laravel-kickstart

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

84 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Laravel Logo

Laravel Kickstart

This project is in an early stage development and is changing rapidly currently.
This repository contains an initial setup for a Laravel project with an opinionated (but fairly sophisticated) workflow to kickstart your next Laravel project.

If you are also thinking, that the existing start kits are not fitting your needs, then this might be the right place for you.
I am looking for support and feedback to make this project better and more useful for everyone.

Stack

  • Laravel 11
  • Inertia.js with Vue.js in the Frontend
  • Tailwind CSS for styling
  • Laravel Sanctum for API authentication and authorization
  • Laravel Reverb for broadcasting Events via Websockets and Laravel Echo for listening to them

Features

  • Multi tenant capable setup where users can be in multiple projects
  • Manage invitations for Projects
  • Projects have API tokens for authentication which are independent from users. This allows for easier handling while offboarding members
  • Permission management via roles where a user can have one role per project. Permissions are defined in code, while roles are living in the database and are acting as container for permissions
  • Server side controlled Sidebar items for the frontend
  • Server side triggerable toast messages via ->with('success', 'The message') on the response
  • Sophisticated translation workflow via two packages from me: bambamboole/laravel-translation-dumper and bambamboole/laravel-i18next. Every executed translation in PHP and Javascript will be dumped automatically in the translation files.
  • Full Vue test setup with coverage support
  • Code lint setup via PHP-CS-Fixer and Prettier for PHP, Blade, Javascript and Tailwind class sorting
  • OpenAPI spec generation via Attributes for better colocation
  • API feature tests have automatic OpenAPI spec validation
  • Automatic OpenAPI spec docs via Swagger UI on /api

Installation

  1. Clone the repository
  2. Copy the .env.example to .env and adjust the settings
  3. Run composer install
  4. Run php artisan key:generate
  5. Run npm install
  6. Run npm run dev
  7. Run php artisan reverb:start

Todos

Feel free to contribute to this project. Here are some ideas for the next steps:

  • Add API endpoint for deleting invitations
  • Replace all hard coded strings with translations
  • Add more tests
  • Make readme more detailed
  • Add two factor authentication (multiple devices per user)
  • Add CI/CD setup for PHP and Javascript
  • Add codecov for code coverage
  • Make better design with own logo and color scheme (urgently Help needed)
  • add full german(de) translation.

Ideas

These are some ideas which are not yet planned but could be interesting for the future. If you are interested in one of these, feel free to hit me up to discuss, for sure also with other ideas.

  • yubikey support for two factor authentication
  • Add Storybook.js for frontend components
  • ??? Your idea ???

License

The Laravel Kickstart project is open-sourced software licensed under the MIT license.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published