PHPackages                             magdicom/nova-visible-password - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. magdicom/nova-visible-password

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

magdicom/nova-visible-password
==============================

Laravel Nova package to toggle visibility of password field.

v1.0.1(3y ago)330.5k↓40.9%4MITVuePHP ^8.0

Since Nov 17Pushed 2y ago1 watchersCompare

[ Source](https://github.com/magdicom/nova-visible-password)[ Packagist](https://packagist.org/packages/magdicom/nova-visible-password)[ RSS](/packages/magdicom-nova-visible-password/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (2)Dependencies (1)Versions (3)Used By (0)

[![A Laravel Nova Toggleable Password Field](banner.jpg)](banner.jpg)

---

[![Latest Version on Github](https://camo.githubusercontent.com/959d30c0004c365929c6a5512e2de9cc6382c58fd94dbde1ff8c4b0fc7f8a5fd/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6d61676469636f6d2f6e6f76612d76697369626c652d70617373776f72642e7376673f7374796c653d666c6174)](https://packagist.org/packages/magdicom/nova-visible-password)[![Total Downloads](https://camo.githubusercontent.com/3873595e6e7905892e90b4370fcd5917b6b7fd0af082829f7d1ad7ab4a21e893/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6d61676469636f6d2f6e6f76612d76697369626c652d70617373776f72642e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/magdicom/nova-visible-password)

[![In Action!](./assets/img/animated_in_action.gif)](./assets/img/animated_in_action.gif)

A Laravel Nova password field with a visibility toggle, its behaviour typical as the built-in password field, but with added features that you may find useful in certain use cases.

### Features:

[](#features)

- it can safely replace the built-in password field.
- Enable the toggle button in index and/or detail.
- Disable the toggle button in forms.
- Render the field with data.
- Disable data encryption/hash.

---

1. [Requirements](https://github.com/magdicom/nova-visible-password#requirements)
2. [Installation](https://github.com/magdicom/nova-visible-password#installation)
3. [Usage](https://github.com/magdicom/nova-visible-password#usage)
    1. [Basic usage](https://github.com/magdicom/nova-visible-password#basic-usage)
    2. [Disable data encryption (Hash)](https://github.com/magdicom/nova-visible-password#disable-data-encryption)
    3. [Populate with data](https://github.com/magdicom/nova-visible-password#populate-field-with-data)
    4. [Disable toggle button on forms](https://github.com/magdicom/nova-visible-password#disable-toggle-button-on-forms)
    5. [Visible on resource index](https://github.com/magdicom/nova-visible-password#enable-toggle-button-on-index)
    6. [Visible on resource detail](https://github.com/magdicom/nova-visible-password#enable-toggle-button-on-detail)
4. [License](https://github.com/magdicom/nova-visible-password#license)

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

[](#requirements)

- `php: ^8`
- `laravel/nova: ^4`

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

[](#installation)

You can install the package in to a Laravel app that uses [Nova](https://nova.laravel.com) via composer:

```
composer require magdicom/nova-visible-password
```

Usage
-----

[](#usage)

### Basic Usage

[](#basic-usage)

[![Basic Usage](./assets/img/img_1.jpg)](./assets/img/img_1.jpg)

Using the field is simple, just like any other Nova built-in field.

```
// in app/Nova/Resources/User.php

use Magdicom\NovaVisiblePassword\VisiblePassword;

class User extends Resource
{

    public function fields(Request $request)
    {
       return [
         VisiblePassword::make('Password')
      ];
    }
 }
```

### Disable Data Encryption

[](#disable-data-encryption)

The default behaviour of the password field is to encrypt the data when saving it using Laravel `Hash` class, to disable this functionality you simply need to call the `hashOnSave` method which accepts a boolean or callback:

```
VisiblePassword::make('Password')->hashOnSave(false),
```

### Populate Field With Data

[](#populate-field-with-data)

Normally password fields would populate/displayed empty, but in some cases you may need these data to be present, use the `withValue` method which accepts a boolean or callback:

```
VisiblePassword::make('Password')->withValue(true),
```

### Disable Toggle Button On Forms

[](#disable-toggle-button-on-forms)

You can disable the toggle button on create/update forms per field using `visibleOnForms` method:

```
VisiblePassword::make('Password')
    ->visibleOnForms(function(){
        // your logic here
        return false;
    }),
```

- The methods `visibleOnForms`, `visibleOnIndex` and `visibleOnDetail` accepts boolean value or a callback.

### Enable Toggle Button On Index

[](#enable-toggle-button-on-index)

Optionally you can enable the toggle button on resource index page:

```
VisiblePassword::make('Password')->visibleOnIndex(),
```

[![Visible On Index](./assets/img/img_3.jpg)](./assets/img/img_3.jpg)

### Enable Toggle Button On Detail

[](#enable-toggle-button-on-detail)

Also you can enable the toggle button on resource detail page:

```
VisiblePassword::make('Password')->visibleOnDetail(),
```

[![Visible On Detail](./assets/img/img_2.jpg)](./assets/img/img_2.jpg)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

32

—

LowBetter than 72% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity34

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity52

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 ~0 days

Total

2

Last Release

1279d ago

### Community

Maintainers

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

---

Top Contributors

[![magdicom](https://avatars.githubusercontent.com/u/91500450?v=4)](https://github.com/magdicom "magdicom (14 commits)")

---

Tags

laravelnovanova-packagepassword-fieldtogglelaravelnova

### Embed Badge

![Health badge](/badges/magdicom-nova-visible-password/health.svg)

```
[![Health](https://phpackages.com/badges/magdicom-nova-visible-password/health.svg)](https://phpackages.com/packages/magdicom-nova-visible-password)
```

###  Alternatives

[optimistdigital/nova-sortable

This Laravel Nova package allows you to reorder models in a Nova resource's index view using drag &amp; drop.

2872.1M6](/packages/optimistdigital-nova-sortable)[outl1ne/nova-sortable

This Laravel Nova package allows you to reorder models in a Nova resource's index view using drag &amp; drop.

2861.8M9](/packages/outl1ne-nova-sortable)[optimistdigital/nova-multiselect-field

A multiple select field for Laravel Nova.

3403.5M7](/packages/optimistdigital-nova-multiselect-field)[digital-creative/conditional-container

Provides an easy way to conditionally show and hide fields in your Nova resources.

116593.8k4](/packages/digital-creative-conditional-container)[sbine/route-viewer

A Laravel Nova tool to view your registered routes.

57215.9k](/packages/sbine-route-viewer)[markwalet/nova-modal-response

A Laravel Nova asset for Modal responses on an action.

14720.0k](/packages/markwalet-nova-modal-response)

PHPackages © 2026

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