Ghygen is a GitHub Actions configurator for your PHP / Laravel project.

Overview

GitHub Workflow Status (branch) GitHub release (latest by date) Website

Ghygen

Ghygen

Ghygen is a GitHub actions Yaml Generator.

Ghygen allows you creating your Yaml file for GitHub Actions, for Laravel/PHP web application, so you can:

  • select triggering events: manually or automatically, when the developer push the code on a specific branch, or a developer create a new Pull Request;
  • select branches;
  • enable caching for all vendors;
  • enable caching PHP packages;
  • select multiple PHP versions (8.0, 7.4, 7.3);
  • select multiple Laravel versions (8, 7, 6), useful if you are developing a Laravel Package and you want to test it with multiple Laravel version;
  • select Node version for NPM (npm run something);
  • caching node packages;
  • setup Mysql Database service;
  • setup PostgreSQL Database service;
  • setup Sqlite in memory database;
  • run migrations;
  • execute tests via phpunit;
  • execute tests via PestPHP;
  • static code analysis with phpstan or psalm;
  • create Sarif report (with Psalm) for GitHub integration with code scanning;
  • code sniffer (via phpcs for PSR12 compatibility);
  • validate Yaml file;
  • execute Browser Test via Laravel Dusk.
  • Run Deployments via Ploi using Ploi Deploy Action.

This is a Work In Progress, we are adding new features...

If you want to test and use quickly this tool, I deployed the codebase (main branch) on Digital Ocean Platform:

If you want to start using it locally you can clone the repo and install it following the instructions below.

Command line

Experimental and "magical" feature: Ghygen ships also a command for generating automatically a GitHub Actions workflow Yaml file. You can install Gygen as project with composer:

composer create-project hi-folks/ghygen
cd ghygen

Once you installed Ghygen, you can execute:

php artisan ghygen:generate --projectdir=../otherproject

Where "../otherproject" is the directory (absolute or relative path name) with your Laravel project (application or package) that yuo want to automatically generate the GitHub Actions workflow yaml file. This "magic" command, will extract information from:

  • composer.json
  • package.json (if it exists)
  • .env file
  • ... and other assets
  • in order to guess a configuration for your GitHub Actions workflow.

By default the command will show the Yaml workflow file in the standard output. If you want to save it in a file for example "my-workflow.yml" you can use --save option:

php artisan ghygen:generate  --save=my-workflow.yml

If you want to autogenerate Yaml file in the .github/workflows directory use --save=auto

php artisan ghygen:generate  --save=auto

The file name will be created with the name found in composer.json (slugified).

So if you are superlazy and want to generate the workflow for the project in the directory ../myproject , you can execute:

php artisan ghygen:generate --projectdir=../myproject/ --save=auto

Install

Clone source code, enter the new directory and perform a couple of instructions:

git clone https://github.com/Hi-Folks/gh-actions-yaml-generator.git
cd gh-actions-yaml-generator
cp .env.example .env
composer install
php artisan key:generate
npm i
npm run production

Then create your database and update the .env file with the right values for DB_* .

Once your Database is configured you can execute the migrations:

php artisan migrate

Start development server

php artisan serve

Open the browser to the URL: http://127.0.0.1:8000

Usage

Follow these steps:

  • access to the form (by default the URL is http://127.0.0.1:8000 if you run php artisan serve);
  • fill the form;
  • click on "Generate Yaml File" button.

github-actions-generator-laravel

Next, copy the content of your generated Yaml in a new file in your Laravel project .github/workflows/laravel_workflow.yaml .

Commit and push the new file.

If you configured "On - Push" you will see the running Actions in your Actions section of your GitHub project.

Comments
  • Add in public $stepPhpstanUseNeon; // false

    Add in public $stepPhpstanUseNeon; // false

    app/Traits/Form/CodeQuality.php:

    • [x] add in public $stepPhpstanUseNeon; // false
    • [x] in loadDefaultsCodeQuality() set as false
    • [x] in loadCodeQualityFromJson set data_fill($j, "stepPhpstanUseNeon", false); for backward compatibility
    • [x] set in setDataCodeQuality function

    resources/views/livewire/form/code-quality.blade.php

    • [x] add a checkbox

    resources/views/yaml/code_quality.blade.php

    • [x] add the new if statement case
    hacktoberfest-accepted 
    opened by ActuallyConnor 8
  • Migrations fail

    Migrations fail

    Run php artisan migrate
      php artisan migrate
      shell: /usr/bin/bash -e {0}
      env:
        DB_CONNECTION: mysql
        DB_DATABASE: db_test_laravel
        DB_PORT: 33306
        DB_USER: root
        DB_PASSWORD: DB_PASSWORD
    
       Illuminate\Database\QueryException 
    
      SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: Temporary failure in name resolution (SQL: select * from information_schema.tables where table_schema = db_test_laravel and table_name = migrations and table_type = 'BASE TABLE')
    
      at vendor/laravel/framework/src/Illuminate/Database/Connection.php:692
        688▕         // If an exception occurs when attempting to run a query, we'll format the error
        689▕         // message to include the bindings with SQL, which will make this exception a
        690▕         // lot more helpful to the developer instead of just the database's errors.
        691▕         catch (Exception $e) {
      ➜ 692▕             throw new QueryException(
        693▕                 $query, $this->prepareBindings($bindings), $e
        694▕             );
        695▕         }
        696▕     }
    
          +36 vendor frames 
      37  artisan:37
          Illuminate\Foundation\Console\Kernel::handle()
    Error: Process completed with exit code 1.
    

    Not sure where to start with this?

    opened by clarg18 8
  • [design] New cover png file

    [design] New cover png file

    Now we have https://github.com/Hi-Folks/gh-actions-yaml-generator/blob/main/ghygen-github-actions-yaml-generator-laravel.png as cover image. Cover

    Any suggestion for the new cover ?

    enhancement good first issue hacktoberfest design 
    opened by roberto-butti 6
  • Feature View composer

    Feature View composer

    Hey there! 🖐 This is my first PR.

    Summary

    The goal for this PR is use view composer by Laravel Framework, remove $data varible and passes the info using view composer.

    #103

    hacktoberfest hacktoberfest-accepted 
    opened by zaratedev 4
  • Add deploy to ploi step

    Add deploy to ploi step

    Hi,

    I am not sure if you are looking for deployment options for this generator but I made the Ploi Deploy Action that triggers the Ploi.io webhook or API and deploys your application to the server.

    Let me know if you need more information 😄

    Feature Request 
    opened by Glennmen 4
  • For phpstan, add option for using phpstan.neon

    For phpstan, add option for using phpstan.neon

    Add an option with phpstan selection, for using phpstan.neon instead of hardcoded value (like the level). In file app/Traits/Form/CodeQuality.php:

    • [ ] add in public $stepPhpstanUseNeon; // false
    • [ ] in loadDefaultsCodeQuality() set as false
    • [ ] in loadCodeQualityFromJson set data_fill($j, "stepPhpstanUseNeon", false); for backward compatibility
    • [ ] set in setDataCodeQuality function

    in resources/views/livewire/form/code-quality.blade.php

    • [ ] add a checkbox

    in resources/views/yaml/code_quality.blade.php add the case

    @if ($stepToolStaticAnalysis == 'phpstan')
    

    for the

    vendor/bin/phpstan analyse {{ $stepDirStaticAnalysis }} --level=4 --no-progress
    

    in order to produce something like

    	    - name: Execute Code Static Analysis (PHP Stan)
          run: |
            vendor/bin/phpstan analyse src --level=4 --no-progress
    

    with the option "use phpstan.neon":

    	    - name: Execute Code Static Analysis (PHP Stan)
          run: |
            vendor/bin/phpstan analyse -c phpstan.neon --no-progress
    
    enhancement good first issue hacktoberfest 
    opened by roberto-butti 3
  • Update contributing.md for hacktoberfest

    Update contributing.md for hacktoberfest

    Replace Requirements section in CONTRIBUTING.md file with:

    ## Open a Pull Request
    
    In order to maintain consistency in the source code we are following PSR12 coding standard, and using PHP stan for static code analysis.
    You can use the command:
    
    make allcheck
    
    to launch
    - **[PSR-12 Coding Standard](https://www.php-fig.org/psr/psr-12/)**, under the hood is used [PHP Code Sniffer](https://pear.php.net/package/PHP_CodeSniffer);
    - **PHPstan** with [level 5](https://phpstan.org/user-guide/rule-levels)
    - **Phpunit** to execute all tests from ./tests/*
    
    I suggest to launch *make allchecks* before to commit or before to create PR.
    
    If you want to work on a PR, I suggest you to creating a new branch starting from **develop branch**, and use it also when you will submit your new **P**ull **R**equest on the original repository.
    
    If you want to contribute with an high quality PR, I suggest you to focus not just on the source code but also:
    
    - **Add tests!** - Your patch won't be accepted if it doesn't have tests.
    
    - **Document any change in behaviour** - Make sure the `README.md` and any other relevant documentation are kept up-to-date.
    
    - **Consider our release cycle** - We try to follow [SemVer v2.0.0](https://semver.org/). Randomly breaking public APIs is not an option.
    
    - **One pull request per feature** - If you want to do more than one thing, send multiple pull requests.
    
    - **Send coherent history** - Make sure each individual commit in your pull request is meaningful. If you had to make multiple intermediate commits while developing, please [squash them](https://www.git-scm.com/book/en/v2/Git-Tools-Rewriting-History#Changing-Multiple-Commit-Messages) before submitting.
    
    
    documentation good first issue hacktoberfest 
    opened by roberto-butti 3
  • Add a job in GitHub Actions workflow for Security Check

    Add a job in GitHub Actions workflow for Security Check

    Using the actions https://github.com/marketplace/actions/the-php-security-checker , add a job in theGithHub Actions workflow for executing security check.

    • executing on every push
    on:
      push:
        branches:
          - main
          - develop
          - features/**
    
    • scheduling at 7:30 am and 5:30pm
    on:
      schedule:
        - cron:  '30 7,17 * * *'
    
    • steps are: checkout and using the security check action:
    steps:
        - uses: actions/checkout@v2
        - uses: symfonycorp/security-checker-action@v2
    
    enhancement good first issue hacktoberfest 
    opened by roberto-butti 3
  • [feature-idea] Generate Actions from Composer.json

    [feature-idea] Generate Actions from Composer.json

    We spoke on Twitter briefly in the week after you pointed out this generator. I was thinking it might be a cool idea if instead of needing to select things via a form that could automate a lot of the option selections using just the info from composer.json?

    Detect the PHP version(s), Laravel version etc. and which PHP tools are involved and then just provide a set of appropriate actions to tick. At that point I'd probably even be happy to pay for it as a service if it saved me the time of having to work out which things I could have in my pipeline without the research.

    Just a thought anyways.

    Feature Request 
    opened by peterfox 3
  • Error generating YAML

    Error generating YAML

    Using the latest version, tried generating a YAML file..

    Error
    Reference "" does not exist at line 1 (near "- *").
    There was some error during validation. Take a look about your data in the form:
    Reference "" does not exist at line 1 (near "- *").
    

    Renders out this YAML file:

    name: Template - Laravel application (Mysql)
    on:
      push:
        branches:
          - master
          - staging
          - testing
          - production
          - develop
          - features/**
          - updates/**
          - update/**
          - fix/**
          - patch/**
      pull_request:
        branches:
          - *
     
    jobs:
      laravel-tests:
        runs-on: ubuntu-latest
    # Service container Mysql mysql
        services:
          # Label used to access the service container
          mysql:
            # Docker Hub image (also with version)
            image: mysql:5.7
            env:
              MYSQL_ROOT_PASSWORD: secret
              MYSQL_DATABASE:  homestead
            ## map the "external" 33306 port with the "internal" 3306
            ports:
              - 33306:3306
            # Set health checks to wait until mysql database has started (it takes some seconds to start)
            options: >-
              --health-cmd="mysqladmin ping"
              --health-interval=10s
              --health-timeout=5s
              --health-retries=3
     
        strategy:
          matrix:
            operating-system: [ubuntu-latest]
            php-versions: [ '8.0','7.4' ]
            dependency-stability: [ prefer-stable ]
     
        name: P${{ matrix.php-versions }} - L${{ matrix.laravel }} - ${{ matrix.dependency-stability }} - ${{ matrix.operating-system}}
     
        steps:
        - uses: actions/checkout@v2
        - name: Setup Node.js
          uses: actions/setup-node@v1
          with:
            node-version: '15.x'
        - name: Cache node_modules directory
          uses: actions/cache@v2
          id: node_modules-cache
          with:
            path: node_modules
            key: ${{ runner.OS }}-build-${{ hashFiles('**/package.json') }}-${{ hashFiles('**/package-lock.json') }}
        - name: Install NPM packages
          if: steps.node_modules-cache.outputs.cache-hit != 'true'
          run: npm ci
        - name: Build frontend
          run: npm run development
        - name: Install PHP versions
          uses: shivammathur/setup-php@v2
          with:
            php-version: ${{ matrix.php-versions }}
        - name: Get Composer Cache Directory 2
          id: composer-cache
          run: |
            echo "::set-output name=dir::$(composer config cache-files-dir)"
         - uses: actions/cache@v2
          id: actions-cache
          with:
            path: ${{ steps.composer-cache.outputs.dir }}
            key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
            restore-keys: |
              ${{ runner.os }}-composer-
         - name: Cache PHP dependencies
          uses: actions/cache@v2
          id: vendor-cache
          with:
            path: vendor
            key: ${{ runner.OS }}-build-${{ hashFiles('**/composer.lock') }}
        - name: Copy .env
          run: php -r "file_exists('.env') || copy('.env.example', '.env');"
        - name: Install Dependencies
          if: steps.vendor-cache.outputs.cache-hit != 'true'
          run: composer install -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist
     
        - name: Generate key
          run: php artisan key:generate
        - name: Directory Permissions
          run: chmod -R 777 storage bootstrap/cache
        - name: Run Migrations
    # Set environment
          env:
            DB_CONNECTION: mysql
            DB_DATABASE: homestead
            DB_PORT: 33306
            DB_USER: root
            DB_PASSWORD: secret
     
          run: php artisan migrate
     
        - name: Show dir
          run: pwd
        - name: PHP Version
          run: php --version
     
    # Code quality
        - name: Execute tests (Unit and Feature tests) via PHPUnit
    # Set environment
          env:
            DB_CONNECTION: mysql
            DB_DATABASE: homestead
            DB_PORT: 33306
            DB_USER: root
            DB_PASSWORD: secret
     
          run: vendor/bin/phpunit --testdox
     
        - name: Execute Code Sniffer via phpcs
          run: |
            composer require --dev squizlabs/php_codesniffer
            vendor/bin/phpcs --standard=PSR12 app
     
        - name: Execute Code Static Analysis (PHP Stan + Larastan)
          run: |
            composer require --dev nunomaduro/larastan
            vendor/bin/phpstan analyse app -c ./vendor/nunomaduro/larastan/extension.neon  --level=4 --no-progress
     
     
     
     
        - name: Browser Test - upgrade and start Chrome Driver
          run: |
            composer require --dev laravel/dusk
            php artisan dusk:chrome-driver --detect
            ./vendor/laravel/dusk/bin/chromedriver-linux > /dev/null 2>&1 &
         - name: Run Dusk Tests
          run: |
            php artisan serve > /dev/null 2>&1 &
            chmod -R 0755 vendor/laravel/dusk/bin/
            php artisan migrate
            php artisan dusk
     # Set environment
          env:
            DB_CONNECTION: mysql
            DB_DATABASE: homestead
            DB_PORT: 33306
            DB_USER: root
            DB_PASSWORD: secret
    
    bug enhancement 
    opened by Braunson 2
  • Add support for PostgreSQL, MS SQL Server and others

    Add support for PostgreSQL, MS SQL Server and others

    We love the idea of ​​the project to generate the yml file, it would be interesting to add support for other types of banks besides MySQL.

    • [x] PostgreSQL
    • [ ] MS SQL Server
    • [x] SQLite
    • [ ] Mongo or another NoSQL

    Thnks!

    Feature Request 
    opened by lsnepomuceno 2
  • Implement

    Implement "Symfony stuff"

    As discussed briefly with my friend @AlessandroMinoccheri at PHPDay2022 event, it would be nice to add "Symfony staff". Something like "Laravel Stuff". This is just a placeholder as a reminder. For now, I'm going to start investigate which steps are needed and are specific for a Symfony application.

    Feature Request 
    opened by roberto-butti 4
Releases(v0.6.2)
  • v0.6.2(Dec 20, 2022)

  • v0.6.1(Apr 17, 2022)

    • added php8.1 for auto-detecting php version for matrix
    • added make install command by @AlessandroMinoccheri
    • fix load template for matrixTestbenchDependencies
    Source code(tar.gz)
    Source code(zip)
  • v0.6.0(Apr 13, 2022)

  • v0.5.2(Apr 12, 2022)

  • v0.5.1(Nov 27, 2021)

  • v0.5.0(Nov 21, 2021)

    • Now you can deploy with Forge with your CI workflow
    • UI refactoring: Introducing DaisyUI components
    • Report for command line execution
    • Upgrade to PHPstan 1
    • Command line: added --dry-run option
    • Now is possible to install Ghygen with composer create-project hi-folks/ghygen
    Source code(tar.gz)
    Source code(zip)
  • v0.4.6(Oct 23, 2021)

    It's still Hacktoberfest!

    • Welcome to PHP 8.1, you can select PHP8.1 (experimental) to check the compatibility of your application in CICD
    Source code(tar.gz)
    Source code(zip)
  • v0.4.5(Oct 22, 2021)

  • v0.4.4(Oct 21, 2021)

    It's still Hacktoberfest!

    • Welcome --save option for CLI (you can define the filename of the workflow file);
    • Set automatically the workflow filename for auto generation (to much automation ;) with --save=auto option
    • Twitter card :)
    Source code(tar.gz)
    Source code(zip)
  • v0.4.3(Oct 19, 2021)

    It is still Hacktoberfest!

    • Psalm, create Sarif report for GitHub code scanning integration
    • update to Alpinejs 3
    • Allow user to set dependency stability (none, the latest stable, the lowest stable), thanks to @marulitua
    • Phpstan Level 6 (from 5 to 6, report missing typehints)
    Source code(tar.gz)
    Source code(zip)
  • v0.4.2(Oct 12, 2021)

    Hacktoberfest, goes on, this is the second release for Hacktoberfest 2021!

    • Updated Cover image
    • Using phpstan.neon file, thanks to @ActuallyConnor
    • autodetect usage of phpstan.neon from command line
    • better management of title and description in meta html tags. Thanks to @zaratedev

    New Contributors

    • @zaratedev made their first contribution in https://github.com/Hi-Folks/gh-actions-yaml-generator/pull/104
    • @ActuallyConnor made their first contribution in https://github.com/Hi-Folks/gh-actions-yaml-generator/pull/105

    Full Changelog: https://github.com/Hi-Folks/gh-actions-yaml-generator/compare/v0.4.1...v0.4.2

    Source code(tar.gz)
    Source code(zip)
  • v0.4.1(Oct 3, 2021)

    It is time for Hacktoberfest!!!

    • With template laravelpackage (no composer.lock), avoid cache vendors and cache package. Thanks to @hetpatel33 for the hacktoberfest contribution;
    • Update PHP packages, also Laralens 0.2.6;
    • Update contributing file for new contributors.
    Source code(tar.gz)
    Source code(zip)
  • v0.4.0(Sep 15, 2021)

    Add command to generate automatically GitHub Actions workflow yaml file from:

    • composer.json;
    • .env;
    • migrations
    • packages.json
    • and other stuff ...

    Let's do some magic ...

    Source code(tar.gz)
    Source code(zip)
  • v0.3.7(Aug 11, 2021)

  • v0.3.6(Jun 12, 2021)

  • v0.3.5(May 17, 2021)

  • v0.3.4(May 13, 2021)

    Add

    • Add wildcard for branch names

    Change

    • Psalm fix MissingReturnType,MissingParamType
    • clean up developments stuff after deploy
    • cleaning some test workflows for GitHub Actions
    Source code(tar.gz)
    Source code(zip)
  • v0.3.3(Apr 24, 2021)

  • v0.3.2(Apr 22, 2021)

  • v0.3.1(Apr 18, 2021)

  • v0.3.0(Apr 15, 2021)

  • v0.2.5(Apr 12, 2021)

    Add

    • New option for installing phpstan in workflow
    • New option for installing phpcs in workflow
    • New option for defining directory to check for phpcs ("app" default )
    • New option for defining directory to check for phpstan ("app" default)
    • New option for execute (or not) 'php artisan key:generate'
    • New option for copying .env template
    • Install Phpstan and phpcs as composer dev

    Change

    • Upgrade PHP packages
    Source code(tar.gz)
    Source code(zip)
  • v0.2.4(Apr 5, 2021)

  • v0.2.3(Apr 4, 2021)

  • v0.2.2(Mar 7, 2021)

    Add

    • All Hashcode configurations are logged into log_configurations table;
    • Dashboard: Show the total configurations created daily;
    • Add About page with /about URL.

    Change

    • Dashboard: sort latest configurations by updated_at.
    Source code(tar.gz)
    Source code(zip)
  • v0.2.1(Feb 26, 2021)

  • v0.2.0(Feb 15, 2021)

    Add

    • Add permalink to load saved configuration
    • Add Makefile for deploy
    • Add check for Rate Limit https://github.com/danharrin/livewire-rate-limiting
    • Add LaraLens package https://github.com/Hi-Folks/lara-lens

    Change

    • Use database migrations in tests
    • Change Demo URL: https://ghygen.hi-folks.dev/
    Source code(tar.gz)
    Source code(zip)
  • v0.1.8(Feb 6, 2021)

    Add

    • Caching node_modules directory when npm build is selected
    • add check for on events (just to avoid a mix of manual/automatic behaviour)
    Source code(tar.gz)
    Source code(zip)
  • v0.1.7(Feb 5, 2021)

    Add

    • Validation for some mandatory fields like name, "on events";
    • Conditional validation for some mandatory fields that depend on a check (fill branches if "On" event is selected, fill mysql parameter if Mysql service is selected);
    • Add Makefile for development.
    • Add Hints / Suggestions
    Source code(tar.gz)
    Source code(zip)
  • v0.1.6(Jan 31, 2021)

Owner
Hi Folks!
Laravel addicted.
Hi Folks!
Log user authentication actions in Laravel.

Laravel Auth Log The laravel-auth-log package will log all the default Laravel authentication events (Login, Attempting, Lockout, etc.) to your databa

Label84 29 Dec 8, 2022
A laravel package for cascding SoftDeletes delete/restore actions

This is a Laravel 8 package for cascding SoftDeletes delete/restore actions. Laravel 7.0 is supported since v0.1.0 Laravel 8.0 is supported since v0.1

Razi Alsayyed 9 Mar 20, 2022
A wrapper for vladimir-yuldashev RabbitMQ Queue for Laravel with Actions

RabbitMQ Actions This package its a wrapper of vladimir-yuldashev/rabbitmq-queue-laravel. Adds a new feature to produce and consume messages with Rabb

RocketsLab 3 Jul 12, 2022
webtrees module: enhanced clippings cart with more functions to add records to the clippings cart and to start actions on these records

webtrees module hh_clippings_cart_enhanced !!! This is an alpha version! Do not use it in a productive webtrees system! !!! This webtrees custom modul

Hermann Hartenthaler 1 Sep 18, 2022
Llum illuminates your Laravel projects speeding up your Github/Laravel development workflow

Llum illuminates your Laravel projects speeding up your Github/Laravel development workflow

Sergi Tur Badenas 110 Dec 25, 2022
Run multiple websites using the same Laravel installation while keeping tenant specific data separated for fully independent multi-domain setups, previously github.com/hyn/multi-tenant

The unobtrusive Laravel package that makes your app multi tenant. Serving multiple websites, each with one or more hostnames from the same codebase. B

Tenancy 2.4k Jan 3, 2023
Github repository dedicated for my YT tutorial which shows how to use testing in Laravel

Testing in Laravel The following documentation is based on my Laravel Testing for Beginners tutorial we’re going to cover the basics of unit tests, fe

Code With Dary 17 Oct 24, 2022
Generate GitHub pull request preview deployments with Laravel Forge

Forge Previewer WARNING: This package is not ready for production usage. Use at your own risk. This package provides a forge-previewer command that ca

Ryan Chandler 43 Dec 15, 2022
Invite System for GitHub Organizations

Invite System for GitHub Organizations OrgManager takes Github Organization invites to a new level! Read more on the OrgManager documentation. Table o

OrgManager 199 Dec 25, 2022
Easily add a full Laravel blog (with built in admin panel and public views) to your laravel project with this simple package.

Webdevetc BlogEtc - Complete Laravel Blog Package Quickly add a blog with admin panel to your existing Laravel project. It has everything included (ro

WebDevEtc. 227 Dec 25, 2022
Effortlessly create a PHP preload script for your Laravel project.

This package has been superseeded by Laragear/Preload. Please migrate to the new package. Laraload Effortlessly create a PHP Preload Script for your L

Italo 209 Dec 7, 2022
Easily Integrate PingPing APIs in your Laravel Project

PingPing This composer package allows us to easily integrate PingPing APIs in your Laravel project. What is PingPing ? PingPing is the simplest uptime

Bhushan Gaikwad 15 Mar 22, 2022
Project to improve your SOLID skills on Laravel Ecossystem

Try Laravel SOLID About the Project The idea is for you get an application built without worrying about the SOLID principles and apply them.

Daniel Reis 41 Dec 13, 2022
Let's base your Laravel project with PROS style

Purpose This library is for convenient methods that use to register code base for Laravel project Target We aimed to reduce complexity for real projec

Protean Studios Co., Ltd. 4 Mar 29, 2022
🏭This package lets you create factory classes for your Laravel project.

Laravel Factories Reloaded ?? This package generates class-based model factories, which you can use instead of the ones provided by Laravel. Laravel 8

Christoph Rumpel 372 Dec 27, 2022
Easily setup SEO in your laravel project with lara-head :heart: @code4mk

installation composer require code4mk/lara-head usage meta ~ inside controller use Khead; class Test { public function home() { Khead::setMeta

null 173 Dec 23, 2022
Use Ciphersweet in your Laravel project

In your project, you might store sensitive personal data in your database. Should an unauthorised person get access to your DB, all sensitive can be read which is obviously not good.

Spatie 248 Jan 1, 2023
Easily add all the 58 Algerian Wilayas and its Dairas to your cool Laravel project (Migrations, Seeders and Models).

Laravel-Algereography Laravel-Algereography allows you to add Migrations, Seeders and Models of Algerian Wilayas and Dairas to your existing or new co

Hocine Saad 48 Nov 25, 2022
Add a general-purpose tools page to your Filament project. 🛠

Add a general-purpose tools page to your Filament project. Installation You can install the package via Composer: composer require ryangjchandler/fila

Ryan Chandler 24 Dec 6, 2022