PHPackages                             bricknpc/eloquent-ui - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Database &amp; ORM](/categories/database)
4. /
5. bricknpc/eloquent-ui

ActiveLibrary[Database &amp; ORM](/categories/database)

bricknpc/eloquent-ui
====================

PHP-first UI components and behaviours for Laravel applications using Blade.

212PHPCI failing

Since Feb 13Pushed 2mo agoCompare

[ Source](https://github.com/bricknpc/eloquent-ui)[ Packagist](https://packagist.org/packages/bricknpc/eloquent-ui)[ RSS](/packages/bricknpc-eloquent-ui/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Eloquent UI
===========

[](#eloquent-ui)

[![Logo](eloquent-ui-png-nobg-horizontal.png)](eloquent-ui-png-nobg-horizontal.png)

[![Static Badge](https://camo.githubusercontent.com/c820e6c075107bc1d250918085fb80cc0e24356bf240594854f095d33647728a/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f627269636b6e70632d656c6f7175656e742d2d75692d626c7565)](https://camo.githubusercontent.com/c820e6c075107bc1d250918085fb80cc0e24356bf240594854f095d33647728a/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f627269636b6e70632d656c6f7175656e742d2d75692d626c7565)[![GitHub License](https://camo.githubusercontent.com/e4f18844cd74c8a596b670874e890e0cf1b77d50afeafa4c4d2d274ea2995b30/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f627269636b6e70632f656c6f7175656e742d7569)](https://camo.githubusercontent.com/e4f18844cd74c8a596b670874e890e0cf1b77d50afeafa4c4d2d274ea2995b30/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f627269636b6e70632f656c6f7175656e742d7569)[![GitHub Actions Workflow Status](https://camo.githubusercontent.com/93f177801c8a6e9053f8ff75dd732acb33f0506ba86e9da62e1cba13b97b813e/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f627269636b6e70632f656c6f7175656e742d75692f63692e796d6c)](https://camo.githubusercontent.com/93f177801c8a6e9053f8ff75dd732acb33f0506ba86e9da62e1cba13b97b813e/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f627269636b6e70632f656c6f7175656e742d75692f63692e796d6c)[![Codecov](https://camo.githubusercontent.com/2922457f536eb41807cbce20c1fa6904da0cda0d714e68f6041f58a58af4fba4/68747470733a2f2f696d672e736869656c64732e696f2f636f6465636f762f632f6769746875622f627269636b6e70632f656c6f7175656e742d7569)](https://camo.githubusercontent.com/2922457f536eb41807cbce20c1fa6904da0cda0d714e68f6041f58a58af4fba4/68747470733a2f2f696d672e736869656c64732e696f2f636f6465636f762f632f6769746875622f627269636b6e70632f656c6f7175656e742d7569)[![GitHub commit activity](https://camo.githubusercontent.com/edd1be417da309485d3e68608f9d2086bd34afcca5b6a95742202605fd69870c/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f636f6d6d69742d61637469766974792f742f627269636b6e70632f656c6f7175656e742d7569)](https://camo.githubusercontent.com/edd1be417da309485d3e68608f9d2086bd34afcca5b6a95742202605fd69870c/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f636f6d6d69742d61637469766974792f742f627269636b6e70632f656c6f7175656e742d7569)[![GitHub Release](https://camo.githubusercontent.com/2121da56b259e06ac055236b80e4a018b7d8f4635bf640482711c140906a5e3b/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f627269636b6e70632f656c6f7175656e742d7569)](https://camo.githubusercontent.com/2121da56b259e06ac055236b80e4a018b7d8f4635bf640482711c140906a5e3b/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f627269636b6e70632f656c6f7175656e742d7569)

Full-stack UI components for Laravel
------------------------------------

[](#full-stack-ui-components-for-laravel)

**Build complete, accessible Laravel user interfaces with less code and fewer compromises.**

Eloquent UI is a full-stack, PHP-first UI framework for Laravel. It goes beyond frontend components by integrating deeply with the backend, so common concerns are handled once and handled correctly.

Instead of assembling forms, validation, accessibility, and error handling yourself, Eloquent UI provides production-ready components that manage the entire flow for you. It includes backend components like validation rules, model casts, database schema macros, request helpers, and more.

Companion Package
-----------------

[](#companion-package)

This is a companion package to [Eloquent Tables](https://github.com/bricknpc/eloquent-tables), which provides powerful table components for Laravel. Together, they form a complete solution for building data-driven applications. Eloquent UI focuses on forms, input elements and frontend components, while Eloquent Tables handles data display and table interactions.

Framework Support
-----------------

[](#framework-support)

Eloquent UI is built on top of [Bootstrap 5](https://getbootstrap.com) and [Laravel](https://laravel.com). Although there are plans to support other frontend UI frameworks in the future, Bootstrap is currently the only supported framework.

Installation
------------

[](#installation)

```
composer require bricknpc/eloquent-ui
```

Requirements
------------

[](#requirements)

- PHP `^8.4|^8.5`
- Laravel `^12.0`
- Bootstrap 5

Usage
-----

[](#usage)

### Publishing assets

[](#publishing-assets)

```
php artisan vendor:publish --tag=eloquent-ui-config
php artisan vendor:publish --tag=eloquent-ui-views
php artisan vendor:publish --tag=eloquent-ui-translations
php artisan vendor:publish --tag=eloquent-ui-assets
```

You will need to publish at least the assets because those contain the JavaScript and CSS required to render the components. Include the assets in your layout and add the custom meta tag:

```
>

        {{ BrickNPC\EloquentUI\meta() }}

```

### View namespace

[](#view-namespace)

All views are available under the `eloquent-ui::` namespace.

```

```

Documentation
-------------

[](#documentation)

Documentation is available at .

Local development
-----------------

[](#local-development)

### Clone and install the project

[](#clone-and-install-the-project)

This project has a simple docker setup for local development. To start local development, download the project and start the docker container. You need to have Docker installed on your local machine for this.

First, clone the project.

```
git clone https://github.com/bricknpc/eloquent-ui.git
cd eloquent-ui
```

Up the docker container and install the dependencies.

```
docker compose up -d
docker compose exec php composer install
docker compose exec php npm ci
```

### Executing commands in the container

[](#executing-commands-in-the-container)

You can execute commands in the container using the exec option.

```
docker compose exec php
```

If you rather log in to the container and execute commands manually, you can use this:

```
docker compose exec php bash
```

### Stopping the container

[](#stopping-the-container)

```
docker compose down
```

### Build frontend assets

[](#build-frontend-assets)

```
docker compose exec php npm run build
```

The build will automatically run anytime you change anything as long as the container is running. Make sure to commit and publish the build files when creating new versions. It may take a few minutes for changes to take effect.

### Adding new components

[](#adding-new-components)

When adding new components, please keep in mind the following guidelines:

- Always define every variable in either the `@props` directive or the `@aware` directive. This way you can quickly see which variables a component expects, and you don't need to write a lot of `ìf` statements checking if a variable is set or exists.
- You can use some PHP in an anonymous component, but when it starts getting complex, please create an actual class-based component so it is easier to test.
- The goal of a component is always to write as little boilerplate code as possible while still allowing for maximum customisation. This can be a bit contradictory, but it is important to keep in mind that the goal is to make it as easy as possible to use the components in any project.

### Documentation

[](#documentation-1)

When starting the docker container, the documentation site will automatically be started as well and will be available on . The documentation is built using [Docusaurus](https://docusaurus.io/). When adding new features or making changes, please also update the documentation. Do not use separate pull requests to update the documentation and the code.

Running tests
-------------

[](#running-tests)

You can run the tests using the following command.

```
docker compose exec php composer test
```

### Test coverage

[](#test-coverage)

Unfortunately, PHP Unit cannot create test coverage for blade views, and since most of the components in Eloquent UI are anonymous components that only consist of a blade view, test coverage is not possible for most of the components. However, you can still generate test coverage for the rest of the code base, and we expect test coverage to be at 100% at all times.

Code quality tools
------------------

[](#code-quality-tools)

Eloquent UI uses PHP CS Fixer and PHPStan to ensure a high-quality code base. You can run the tools locally using the following commands.

**PHP CS Fixer:**

```
docker compose exec php composer cs
```

**PHPStan:**

```
docker compose exec php composer ps
```

Community showcase
------------------

[](#community-showcase)

Are you using Eloquent UI in your project? Let us know by opening a pull request to add your project to the [community showcase](https://github.com/bricknpc/eloquent-ui/blob/main/docs/src/pages/showcase.js). We love seeing what people are building with Eloquent UI.

Contributing
------------

[](#contributing)

Pull requests are welcome. When creating a pull request, please include what you changed and why in the description of the pull request. When fixing a bug, please include a test that reproduces the bug and describe how to test the bug manually.

Before creating a pull request, please run the tests and code quality tools locally.

MIT License
-----------

[](#mit-license)

Copyright (c) 2025 BrickNPC

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

###  Health Score

22

—

LowBetter than 23% of packages

Maintenance59

Moderate activity, may be stable

Popularity8

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity11

Early-stage or recently created project

 Bus Factor1

Top contributor holds 98.5% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/b0d123e02fb312508d1e095ab1c2155c11d700916f47c29a2ae805f315b7229b?d=identicon)[bricknpc](/maintainers/bricknpc)

---

Top Contributors

[![bricknpc](https://avatars.githubusercontent.com/u/243652318?v=4)](https://github.com/bricknpc "bricknpc (65 commits)")[![Davekuh](https://avatars.githubusercontent.com/u/1210112?v=4)](https://github.com/Davekuh "Davekuh (1 commits)")

---

Tags

blade-templatebootstrapbootstrap5component-libraryeloquentlaravellaravel-12laravel-packageuiui-componentsuikit

### Embed Badge

![Health badge](/badges/bricknpc-eloquent-ui/health.svg)

```
[![Health](https://phpackages.com/badges/bricknpc-eloquent-ui/health.svg)](https://phpackages.com/packages/bricknpc-eloquent-ui)
```

###  Alternatives

[doctrine/orm

Object-Relational-Mapper for PHP

10.2k285.3M6.2k](/packages/doctrine-orm)[jdorn/sql-formatter

a PHP SQL highlighting library

3.9k115.1M102](/packages/jdorn-sql-formatter)[illuminate/database

The Illuminate Database package.

2.8k52.4M9.3k](/packages/illuminate-database)[mongodb/mongodb

MongoDB driver library

1.6k64.0M542](/packages/mongodb-mongodb)[ramsey/uuid-doctrine

Use ramsey/uuid as a Doctrine field type.

90340.3M209](/packages/ramsey-uuid-doctrine)[reliese/laravel

Reliese Components for Laravel Framework code generation.

1.7k3.4M16](/packages/reliese-laravel)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
