PHPackages                             salmanalmajali/jokes-widget - 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. salmanalmajali/jokes-widget

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

salmanalmajali/jokes-widget
===========================

A fun Filament PHP plugin to display Dad Jokes (Bahasa Indonesia &amp; English) via API. Make your filament dashboard tell a joke

v1.0.0(3mo ago)2105↓50%[1 PRs](https://github.com/SalmanAlmajali/jokes-widget/pulls)MITPHPPHP ^8.2CI passing

Since Jan 28Pushed 1mo agoCompare

[ Source](https://github.com/SalmanAlmajali/jokes-widget)[ Packagist](https://packagist.org/packages/salmanalmajali/jokes-widget)[ Docs](https://github.com/salmanalmajali/jokes-widget)[ GitHub Sponsors](https://github.com/SalmanAlmajali)[ RSS](/packages/salmanalmajali-jokes-widget/feed)WikiDiscussions main Synced 1mo ago

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

Filament Jokes Widget 🎤
=======================

[](#filament-jokes-widget-)

[![Latest Version on Packagist](https://camo.githubusercontent.com/d70c65cf250ac83d21928b7bb9fec1a370c3ecdf22a41212d7e87267f9e7feff/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f73616c6d616e616c6d616a616c692f6a6f6b65732d7769646765742e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/salmanalmajali/jokes-widget)[![Total Downloads](https://camo.githubusercontent.com/f5774af21b9fa1a31a2bc71c43a60a883711a0c1274d4b11c09fd30e81799506/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f73616c6d616e616c6d616a616c692f6a6f6b65732d7769646765742e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/salmanalmajali/jokes-widget)[![License](https://camo.githubusercontent.com/e28758dfabb230fa3f77573a4e26a87152e03654262a5780cc68ad911cf5f7f4/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f73616c6d616e616c6d616a616c692f6a6f6b65732d7769646765742e7376673f7374796c653d666c61742d737175617265)](LICENSE.md)

Add a touch of fun and lightweight Filament PHP widget that brings "Dad Jokes" humor directly to your dashboard and make your Filament Dashboard tell a joke. This plugin is designed to add a bit of humor to the administrative experience by displaying jokes tailored to your application's language settings.

Key Features
------------

[](#key-features)

- **Automatic Localization**:
    - **Bahasa Indonesia**: Displays a collection of iconic local "bapak-bapak" jokes. Collected from [Candaan API Repository](https://github.com/ardhptr21/candaan-api/) by [Ardhi Putra](https://github.com/ardhptr21)
    - **English**: Dynamically fetches fresh dad jokes from the `icanhazdadjoke.com` API.
- **Interactive Refresh**: Includes a button to instantly swap jokes without reloading the page using Livewire.
- **Filament V4 and V5 Ready**: Optimized to run seamlessly on the latest version of Filament.

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

[](#installation)

You can install the package via Composer:

```
composer require salmanalmajali/jokes-widget
```

(Optional) Publish the translation files if you wish to customize the widget text:

```
php artisan vendor:publish --tag="jokes-widget-translations"
```

Usage
-----

[](#usage)

Register the plugin in your Filament Panel Provider (typically `AdminPanelProvider.php`):

```
use SalmanAlmajali\JokesWidget\JokesWidget;

public function panel(Panel $panel): Panel
{
    return $panel
        ->widgets([
            JokesWidget::class,
        ]);
}
```

Localization and Screenshoot
----------------------------

[](#localization-and-screenshoot)

The widget automatically detects your application's locale:

- If the locale is set to id, the widget uses the local joke collection. [![Screenshot 2026-01-28 225903](https://private-user-images.githubusercontent.com/89902695/541710680-eaf84789-4c67-44a7-b842-7cb58ffcdf59.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzUzNjQwNjUsIm5iZiI6MTc3NTM2Mzc2NSwicGF0aCI6Ii84OTkwMjY5NS81NDE3MTA2ODAtZWFmODQ3ODktNGM2Ny00NGE3LWI4NDItN2NiNThmZmNkZjU5LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjA0MDUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwNDA1VDA0MzYwNVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTRkMWFiNmY2YTUwODFmZmQ0N2QwZGQ4NTI5NThhNDkyODM3MmEyOWI2MDRmMDEzZDExZTZiZmM3ZjQ0YTFiMzUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.F9S1hVcHc8Vl9uztEQrMdUiL1E8O6W_HEKj-6V6RLnU)](https://private-user-images.githubusercontent.com/89902695/541710680-eaf84789-4c67-44a7-b842-7cb58ffcdf59.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzUzNjQwNjUsIm5iZiI6MTc3NTM2Mzc2NSwicGF0aCI6Ii84OTkwMjY5NS81NDE3MTA2ODAtZWFmODQ3ODktNGM2Ny00NGE3LWI4NDItN2NiNThmZmNkZjU5LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjA0MDUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwNDA1VDA0MzYwNVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTRkMWFiNmY2YTUwODFmZmQ0N2QwZGQ4NTI5NThhNDkyODM3MmEyOWI2MDRmMDEzZDExZTZiZmM3ZjQ0YTFiMzUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.F9S1hVcHc8Vl9uztEQrMdUiL1E8O6W_HEKj-6V6RLnU)
- or any other locale (default en), the widget fetches data from the external API. [![Screenshot 2026-01-28 230135](https://private-user-images.githubusercontent.com/89902695/541710968-e6708522-0cba-4099-860a-0fd7923fd6dd.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzUzNjQwNjUsIm5iZiI6MTc3NTM2Mzc2NSwicGF0aCI6Ii84OTkwMjY5NS81NDE3MTA5NjgtZTY3MDg1MjItMGNiYS00MDk5LTg2MGEtMGZkNzkyM2ZkNmRkLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjA0MDUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwNDA1VDA0MzYwNVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPThlMzhhY2RkNjkwZjNmMDUyZDcwMzVlNzI4YjI4ZjRlYzM3YjY5YWMwMGRkNTAzZDUwYzE1YTQwZWU2YjhmN2MmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.9MO34MP9AxxRCH4yUZdcauG8C-WcG50gmwGz51jmxdo)](https://private-user-images.githubusercontent.com/89902695/541710968-e6708522-0cba-4099-860a-0fd7923fd6dd.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzUzNjQwNjUsIm5iZiI6MTc3NTM2Mzc2NSwicGF0aCI6Ii84OTkwMjY5NS81NDE3MTA5NjgtZTY3MDg1MjItMGNiYS00MDk5LTg2MGEtMGZkNzkyM2ZkNmRkLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjA0MDUlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwNDA1VDA0MzYwNVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPThlMzhhY2RkNjkwZjNmMDUyZDcwMzVlNzI4YjI4ZjRlYzM3YjY5YWMwMGRkNTAzZDUwYzE1YTQwZWU2YjhmN2MmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.9MO34MP9AxxRCH4yUZdcauG8C-WcG50gmwGz51jmxdo)

Testing
-------

[](#testing)

Run the package tests using Pest:

```
composer test
```

Changelog
---------

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information on what has changed recently.

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

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) for details.

Security
--------

[](#security)

If you discover any security-related issues, please email  instead of using the issue tracker.

Credits
-------

[](#credits)

- [Salman Al Majali](https://github.com/SalmanAlmajali)
- [Ardhi Putra](https://github.com/ardhptr21)
- [All Contributors](../../contributors)

###  Health Score

41

—

FairBetter than 89% of packages

Maintenance86

Actively maintained with recent releases

Popularity15

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity46

Maturing project, gaining track record

 Bus Factor1

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

Unknown

Total

1

Last Release

111d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/21637483e681ecc221c387dc71d5587781cf6f3f56b8fe458f6fa1548b24aeaf?d=identicon)[SalmanAlmajali](/maintainers/SalmanAlmajali)

---

Top Contributors

[![SalmanAlmajali](https://avatars.githubusercontent.com/u/89902695?v=4)](https://github.com/SalmanAlmajali "SalmanAlmajali (39 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (2 commits)")

---

Tags

laravelwidgetfilamentSalmanAlmajalijokes-widget

###  Code Quality

TestsPest

Static AnalysisPHPStan

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/salmanalmajali-jokes-widget/health.svg)

```
[![Health](https://phpackages.com/badges/salmanalmajali-jokes-widget/health.svg)](https://phpackages.com/packages/salmanalmajali-jokes-widget)
```

###  Alternatives

[pboivin/filament-peek

Full-screen page preview modal for Filament

253319.6k12](/packages/pboivin-filament-peek)[dotswan/filament-map-picker

Easily pick and retrieve geo-coordinates using a map-based interface in your Filament applications.

124139.3k2](/packages/dotswan-filament-map-picker)[creagia/filament-code-field

A Filamentphp input field to edit or view code data.

58289.3k3](/packages/creagia-filament-code-field)[jibaymcs/filament-tour

Bring the power of DriverJs to your Filament panels and start a tour !

12247.8k](/packages/jibaymcs-filament-tour)[aymanalhattami/filament-context-menu

context menu (right click menu) for filament

9838.0k](/packages/aymanalhattami-filament-context-menu)[schmeits/filament-character-counter

This is a Filament character counter TextField and Textarea form field for Filament v4 and v5

33184.7k6](/packages/schmeits-filament-character-counter)

PHPackages © 2026

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