Skip to content

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

License

Notifications You must be signed in to change notification settings

laravilt/support

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

46 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

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.

About

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

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

 

Packages

 
 
 

Contributors 4

  •  
  •  
  •  
  •