vpremiss/crafty

Some essential helpers to rely on during TALL stack development.

Fund package maintenance!
VPremiss


README

بسم الله الرحمن الرحيم

Crafty

Some essential helpers to rely on during TALL stack development.

Latest Version on Packagist GitHub Tests Action Status Codecov Total Downloads

Description

Contains some helper service classes (that you can use as Laravel facades). And it has some global helper functions for quick actions as well... Pretty much the things we found ourselves needing and without having a "strong" reason to PR Laravel about.

Installation

  1. Install the package via composer:

    composer require VPremiss/Crafty
  2. Publish the config file using this Artisan command:

    php artisan vendor:publish --tag="crafty-config"

Upgrading

  1. Backup your current config.

  2. Republish the package stuff using this Artisan command:

    php artisan vendor:publish --tag="crafty-config" --force

Usage

  • Enumerified

    • Can be applied to enums to extend their TALL abilities.
  • Installable

    • Used along HasInstallationCommand trait on the package service provider, in order to implement an installation command.
    • Needs the installationCommand() method applied within the laravel-package-tools service provider's bootingPackage() method.
  • Configurated

    • Ensures, as a package service provider's interface, that package configurations are validated and handled gracefully.
    • During packageRegistered(), you have to call registerConfigurations() method that's available in ManagesConfigurations trait.
    • It's used along CraftyPackage::getConfiguration() method.

API

Below are the tables of all the Crafty package helpers:









Package Development

To integrate this package into the development of another package, ensure you load it first within your TestCase file:

class TestCase extends Orchestra
{
    // ...
    public function ignorePackageDiscoveriesFrom()
    {
        return [
            'vpremiss/arabicable', // the other package
            'vpremiss/crafty',
        ];
    }
    
    protected function getPackageProviders($_)
    {
        return [
            \VPremiss\Crafty\CraftyServiceProvider::class,
            \VPremiss\Arabicable\ArabicableServiceProvider::class, // the other package
        ];
    }
    // ...
}

Changelogs

You can check out the package's changelogs online via WTD.

Progress

You can also checkout the project's roadmap among others in the organization's dedicated section for projects.

Support

Support ongoing package maintenance as well as the development of other projects through sponsorship or one-time donations if you prefer.

And may Allah accept your strive; aameen.

License

This package is open-sourced software licensed under the MIT license.

Credits


والحمد لله رب العالمين