laravilt/support

Foundation package providing base components, utilities, and contracts for all Laravilt packages. Build custom components with 13+ reusable traits, Get/Set utilities, and multi-platform serialization support.

Fund package maintenance!
fadymondy

Installs: 577

Dependents: 12

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 0

Open Issues: 0

Language:Vue

pkg:composer/laravilt/support

1.0.4 2025-12-21 14:59 UTC

This package is auto-updated.

Last update: 2025-12-21 15:03:31 UTC


README

support

Laravilt Support

Latest Stable Version License Downloads Dependabot Updates PHP Code Styling Tests

Foundation package providing base components, utilities, and contracts for all Laravilt packages. Build custom components with reusable traits, utilities, and base classes.

Features

  • 🏗️ Base Component - Foundation for all UI components
  • 🎨 Concerns - 11+ reusable component behaviors (traits)
  • 🛠️ Utilities - Get, Set, Str, Arr helpers
  • 📝 Contracts - Interfaces for consistent implementations
  • 🔄 Serialization - Multi-platform support

Available Traits

Trait Description
CanBeDisabled Enable/disable component state
CanBeHidden Conditional visibility control
HasActions Action button support
HasColor Color theming (primary, success, danger, etc.)
HasDescription Description/helper text
HasIcon Icon display support
HasId Unique identifier management
HasLabel Label configuration
HasName Name attribute handling
HasPlaceholder Placeholder text
InteractsWithState State management utilities

Quick Example

use Laravilt\Support\Component;
use Laravilt\Support\Concerns\HasLabel;
use Laravilt\Support\Concerns\HasIcon;
use Laravilt\Support\Concerns\HasColor;

class MyComponent extends Component
{
    use HasLabel;
    use HasIcon;
    use HasColor;

    public static function make(string $name): static
    {
        return app(static::class, ['name' => $name]);
    }
}

// Usage
MyComponent::make('action')
    ->label('Click Me')
    ->icon('plus')
    ->color('primary');

Utilities

use Laravilt\Support\Get;
use Laravilt\Support\Set;
use Laravilt\Support\Str;

// Dot notation access
Get::value($array, 'nested.key', 'default');
Set::value($array, 'nested.key', 'value');

// String utilities
Str::slug('My Component');  // 'my-component'

Installation

composer require laravilt/support

Generator Command

php artisan make:component RatingInput

Documentation

License

The MIT License (MIT). Please see License File for more information.