PHPackages                             janmoo/crudwire - 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. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. janmoo/crudwire

ActiveLibrary[Authentication &amp; Authorization](/categories/authentication)

janmoo/crudwire
===============

a package for Laravel Auth, performing crud operations on users

v1.2(5y ago)031MITHTMLPHP ^7.3

Since Aug 22Pushed 5y ago1 watchersCompare

[ Source](https://github.com/JanMoo/Crudwire)[ Packagist](https://packagist.org/packages/janmoo/crudwire)[ Docs](https://github.com/janmoo/crudwire)[ RSS](/packages/janmoo-crudwire/feed)WikiDiscussions master Synced 3d ago

READMEChangelog (2)Dependencies (7)Versions (5)Used By (0)

crudwire
========

[](#crudwire)

[![Latest Stable Version](https://camo.githubusercontent.com/97c2a05a32986da3ab30c541915cd43a53a9caeea0181f37792a66ed12b6e8f8/68747470733a2f2f706f7365722e707567782e6f72672f6a616e6d6f6f2f63727564776972652f76)](//packagist.org/packages/janmoo/crudwire)[![Total Downloads](https://camo.githubusercontent.com/7ee7d5dbc93c7ee954ff79c63cdf39f3f219ac69b0af7cbc08be8f04080d9e08/68747470733a2f2f706f7365722e707567782e6f72672f6a616e6d6f6f2f63727564776972652f646f776e6c6f616473)](//packagist.org/packages/janmoo/crudwire)[![License](https://camo.githubusercontent.com/7e164e312b4d5bd08f6085cd5b4710669e7baea8f4c7f1335fdddc8e9cf0fba9/68747470733a2f2f706f7365722e707567782e6f72672f6a616e6d6f6f2f63727564776972652f6c6963656e7365)](//packagist.org/packages/janmoo/crudwire)

This package provides a CRUD(create read update delete) interface, extending the laravel/ui auth package. Cooked up with Livewire and a Dash of turbolinks. Get started right away with our [quickstart](#quickstart) guide or go to the [documentation](#documentation) section for more in depth information.

##### Checkout the official site [Crudwire.be](https://crudwire.be "Crudwire official website")

[](#checkout-the-official-site-crudwirebe)

### Crudwire was built thanks to the following technologies.

[](#crudwire-was-built-thanks-to-the-following-technologies)

- **[Laravel-packager](https://github.com/Jeroen-G/laravel-packager "laravel-packager")**
- **[Livewire](https://laravel-livewire.com/ "laravel-livewire official site")**
- **[Laravel](https://laravel.com "official laravel site")**
- **[Turbolinks.js](https://www.npmjs.com/package/turbolinks "npm turbolinks.js")**
- **[Bootstrap](https://getbootstrap.com/ "Bootstrap official site")**

#### some screenshots:

[](#some-screenshots)

[![alt text](https://github.com/JanMoo/crudwireimages/raw/master/crudwirescreenshot1.png "screenshot user overview")](https://github.com/JanMoo/crudwireimages/blob/master/crudwirescreenshot1.png)[![alt text](https://github.com/JanMoo/crudwireimages/raw/master/screenshot2.png "create new user")](https://github.com/JanMoo/crudwireimages/blob/master/screenshot2.png)

Quickstart
==========

[](#quickstart)

Let's get this party started!
=============================

[](#lets-get-this-party-started)

This is a quickstart guide, please check [documentation](#documentation) for more in depth information.

Install Laravel authentication
------------------------------

[](#install-laravel-authentication)

```
composer require laravel/ui

php artisan ui vue --auth

```

Migrate database.

Install Turbolinks
------------------

[](#install-turbolinks)

Install Turbolinks on your Laravel app.

```
npm install turbolinks

```

Add Turbolinks to your `app.js` below bootstrap.js.

```
require('./bootstrap');
    var Turbolinks = require("turbolinks")
    Turbolinks.start()

```

Add `data-turbolinks-track` attribute to your `script/css` tags. Make sure to check this happens on every page `layouts.app`.

```

```

Please check that your `app.js` is loaded on every page.

Install Crudwire
----------------

[](#install-crudwire)

```
composer require janmoo/crudwire

```

npm install &amp;&amp; npm run dev

```
npm install && npm run dev

```

All set and ready to go.
========================

[](#all-set-and-ready-to-go)

Documentation
=============

[](#documentation)

Table of contents
-----------------

[](#table-of-contents)

1. [installation](#installation)
    1. [Install Laravel authentication](#Install-Laravel-authentication)
    2. [Install Turbolinks](#install-turbolinks)
    3. [Install Crudwire](#install-crudwire)
2. [Configuration options](#configuration)
    1. [Publishing the configuration file](#publishing-the-configuration-file)
    2. [routes](#routes)
    3. [Adding AUTH to the middleware](#auth)
    4. [Changing the pagination](#pagiantion)
    5. [Change which columns are displayed in the user overview](#displayed-columns)
3. [Extending and customizing this package](#extending-customizing)
    1. [Changing the validation rules](#validation)
    2. [Adding input elements to the `create` and `update` view](#input-elements)
    3. [Customizing the Crudwire Views](#crudwire-views)

1 Installation
--------------

[](#1-installation)

**[Turbolinks.js](https://www.npmjs.com/package/turbolinks "npm turbolinks.js")**and **[Laravel authentication](https://laravel.com/docs/7.x/authentication "laravel authentication")**must be installed to use Crudwire.

This package uses **[Bootstrap.](https://getbootstrap.com/ "bootstrap official site")**

#### 1.1 Install Laravel authentication

[](#11-install-laravel-authentication)

Install Laravel authentication on your app.

```
composer require laravel/ui

php artisan ui vue --auth

```

Migrate database.

#### 1.2 Install Turbolinks

[](#12-install-turbolinks)

Install Turbolinks on your laravel app.

```
npm install turbolinks

```

Add Turbolinks to your `app.js` below `bootstrap.js`.

```
require('./bootstrap');
var Turbolinks = require("turbolinks")
Turbolinks.start()

```

Add `data-turbolinks-track` attribute to your `script/css` tags. Make sure to check this happens on every page (layouts.app).

```

```

Plese check that your `app.js` is loaded on every page.

#### 1.3 Install Crudwire

[](#13-install-crudwire)

Now you can install Crudwire.

```
composer require janmoo/crudwire

```

Don't forget to run:

```
npm install && npm run dev

```

Now you can run `php artisan serve`, and visit `localhost/crudwire/user`.

2 Configuration options
-----------------------

[](#2-configuration-options)

#### 2.1 Publishing the configuration file

[](#21-publishing-the-configuration-file)

To change the configuration options you must publish the configuration file, this can be done with the command below.

```
php artisan vendor:publish --tag="crudwire.config"

```

#### 2.2 Routes

[](#22-routes)

By default crudwire is configured to be served on the route `yourwebsite.example/crudwire/user`. This prefix can be changed by publishing the config.

Now you can add an `ENV` variable to the `.ENV``CRUDWIRE_PREFIX`.

e.g: `CRUDWIRE_PREFIX=happy` =&gt; yourwebsite.example/happy is where you will find the user overview.

The routes used by Crudwire are the following:

routenamemethod/CRUDWIRE\_PREFIX/user'crudwire.user.index'GET/CRUDWIRE\_PREFIX/user/create'crudwire.user.create'GET/CRUDWIRE\_PREFIX/user'crudwire.user.store'POST/CRUDWIRE\_PREFIX/user/{user}/edit'crudwire.user.edit'GET/CRUDWIRE\_PREFIX/user/{user}'crudwire.user.update'PUT PATCHAll of these routes use the `CruwireUsersController.php`.

#### 2.3 Adding AUTH to the middleware

[](#23-adding-auth-to-the-middleware)

`CRUDWIRE_MIDDLEWARE` can be added to the `.ENV`. This array contains all the middleware used by Crudwire routes, Crudwire uses the middleware `'web'`, make sure this is always present.

#### 2.4 The layouts used by Crudwire

[](#24-the-layouts-used-by-crudwire)

To change the layout used by Crudwire. You should add `CRUDWIRE_LAYOUT` to the `.ENV` file. This variable defines the layout which crudwire uses to extend and display views. By default this is set to `crudwire::layouts.base`. Please don't forget to add the livewire directives `@@livewireStyles` and `@@livewireScripts` to your own layout. Add `turbolinks.js` and make sure your layout has a `@@section('content')`

#### 2.4 Changing the pagination

[](#24-changing-the-pagination)

By adding the `CRUDWIRE_PAGINATION` variable to the `.ENV` file, you can change the default pagination which is set to 10. The value given to the variable should be a non negative integer.

#### 2.5 Change which columns are displayed in the user overview

[](#25-change-which-columns-are-displayed-in-the-user-overview)

By adding the `CRUDWIRE_DONT_DISPLAY` variable to the `.ENV`. This is an array containing the columnnames of the columns you wish not to display. The Default values are `["password","remebertoken"]`.

3 Extending and customizing this package
----------------------------------------

[](#3-extending-and-customizing-this-package)

Please note that virtual columns are not supported yet.

#### 3.1 Changing the validation rules

[](#31-changing-the-validation-rules)

When the config file is published, you will find that it contains two arrays with validation rules.

- `validation_rules_create_new_user`: to validate newly created users.
- ` `validation_rules_update_user`: to validate updated user's info.`

These arrays **should** be customized to reflect changes made to the `$user` model or migration. Crudwire is configured to display all fields that are `$fillable`.

#### 3.2 Adding input elements to the `create` and `update` view

[](#32-adding-input-elements-to-the-create-and-update-view)

In the config file `app/config/crudwire.php`, you will find an array `crudwire_form_inputs`, add the name of your blade components `$value` with a `$key` equal to the columnname to this array. An example of an input blade component can be found in `resources/views/vendor/crudwire/form/inputs`.

e.g.: Blade component name equal to `form.input.name` and DB columnname equal to name.

```
'crudwire_form_inputs'                  => ['name'    => 'form.inputs.name'],

```

#### 3.3 Customizing the Crudwire Views

[](#33-customizing-the-crudwire-views)

To customize the Crudwire Views, you should first publish them. This should be done with the following command.

```
php artisan vendor:publish --tag="crudwire.views"

```

Once you have used the `vendor:publish` command you will find the views `resources/views/vendor/crudwire`. When customized Laravel will detect changes and use the customized view automatically.

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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.

###  Release Activity

Cadence

Every ~1 days

Total

3

Last Release

2082d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/32166427?v=4)[JanMoo](/maintainers/JanMoo)[@JanMoo](https://github.com/JanMoo)

---

Top Contributors

[![JanMoo](https://avatars.githubusercontent.com/u/32166427?v=4)](https://github.com/JanMoo "JanMoo (45 commits)")

---

Tags

laravelCrudwire

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/janmoo-crudwire/health.svg)

```
[![Health](https://phpackages.com/badges/janmoo-crudwire/health.svg)](https://phpackages.com/packages/janmoo-crudwire)
```

###  Alternatives

[bezhansalleh/filament-shield

Filament support for `spatie/laravel-permission`.

2.8k2.9M88](/packages/bezhansalleh-filament-shield)[olssonm/l5-very-basic-auth

Laravel stateless HTTP basic auth without the need for a database

1662.5M1](/packages/olssonm-l5-very-basic-auth)[scaler-tech/laravel-saml2

SAML2 Service Provider integration for Laravel applications, based on OneLogin toolkit

2737.5k](/packages/scaler-tech-laravel-saml2)[mad-web/laravel-social-auth

Easy social auth integration with a lot of available providers

516.7k](/packages/mad-web-laravel-social-auth)[truckersmp/steam-socialite

Laravel Socialite provider for Steam OpenID.

1516.7k](/packages/truckersmp-steam-socialite)[pschocke/laravel-telegram-login-widget

Easily integrate Telegrams login widget into your Laravel application to send Telegram messages

1610.4k](/packages/pschocke-laravel-telegram-login-widget)

PHPackages © 2026

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