PHPackages                             alexsyvolap/filament-confetti - 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. alexsyvolap/filament-confetti

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

alexsyvolap/filament-confetti
=============================

A fluent, zero-config confetti integration for Filament PHP. Add cinematic particle effects to your admin panel

1.0.2(2w ago)3157↓36.4%MITPHPPHP ^8.1

Since May 17Pushed 2w agoCompare

[ Source](https://github.com/alexsyvolap/filament-confetti)[ Packagist](https://packagist.org/packages/alexsyvolap/filament-confetti)[ Docs](https://github.com/alexsyvolap/filament-confetti)[ GitHub Sponsors](https://github.com/alexsyvolap)[ RSS](/packages/alexsyvolap-filament-confetti/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (3)Dependencies (9)Versions (4)Used By (0)

Filament Confetti 🎉
===================

[](#filament-confetti-)

[![Filament Confetti](./art/confetti.jpg)](./art/confetti.jpg)

A fluent, elegant, and zero-config Confetti integration for Filament PHP. Powered by the amazing [canvas-confetti](https://github.com/catdad/canvas-confetti) library, this package brings cinematic, hardware-accelerated particle effects to your Filament admin panel with a beautiful PHP Builder API.

[![PHP 8.1+](https://camo.githubusercontent.com/a470606f660d1242d8bca3bfe3300787361bf4666601e58d272d86a73ea00367/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048502d382e312b2d626c75653f7374796c653d666c61742d737175617265)](https://camo.githubusercontent.com/a470606f660d1242d8bca3bfe3300787361bf4666601e58d272d86a73ea00367/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048502d382e312b2d626c75653f7374796c653d666c61742d737175617265)[![License MIT](https://camo.githubusercontent.com/152aa2a37725b9fd554b28ff24d270f6071c67927a63e6d635a55c8e188e20c7/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4d49542d677265656e3f7374796c653d666c61742d737175617265)](https://camo.githubusercontent.com/152aa2a37725b9fd554b28ff24d270f6071c67927a63e6d635a55c8e188e20c7/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4d49542d677265656e3f7374796c653d666c61742d737175617265)

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

[](#installation)

```
composer require alexsyvolap/filament-confetti
```

Getting Started
---------------

[](#getting-started)

### 1. Register the Plugin

[](#1-register-the-plugin)

```
use AlexSyvolap\FilamentConfetti\FilamentConfettiPlugin;

public function panel(Panel $panel): Panel
{
    return $panel
        // ...
        ->plugin(FilamentConfettiPlugin::make());
}
```

Usage
-----

[](#usage)

The package provides a highly fluent, chaining API. You can trigger confetti from anywhere in your Filament app (Pages, Actions, Controllers, Livewire components).

### Basic Usage

[](#basic-usage)

Just fire the default confetti explosion from the center of the screen

```
use AlexSyvolap\FilamentConfetti\Confetti;

Confetti::shoot();
```

[![Defaul Confetti](./art/default.gif)](./art/default.gif)

### Positioning

[](#positioning)

You can shoot confetti from various screen positions

```
Confetti::left()->shoot();
Confetti::topRight()->shoot();
Confetti::bottom()->shoot();
```

Available positions: `center()`, `top()`, `bottom()`, `left()`, `right()`, `topLeft()`, `topRight()`, `bottomLeft()`, `bottomRight()`.

### Epic Presets 🚀

[](#epic-presets-)

We ported the most popular cinematic effects so you can use them in one line of code:

#### Realistic Confetti

[](#realistic-confetti)

```
// Realistic 3D explosion with 5 physical waves
Confetti::realistic()->shoot();
```

[![Realistic Confetti](./art/realistic.gif)](./art/realistic.gif)

#### Show

[](#show)

```
// 15 seconds of falling snow
Confetti::snow()->shoot();
```

[![Show](./art/snow.gif)](./art/snow.gif)

#### Fireworks

[](#fireworks)

```
// 15 seconds of random fireworks in the sky
Confetti::fireworks()->shoot();
```

[![Fireworks](./art/fireworks.gif)](./art/fireworks.gif)

#### Emoji

[](#emoji)

```
// Raining Emoji explosion!
Confetti::emoji('💸')->shoot();
```

[![Emoji](./art/emoji.gif)](./art/emoji.gif)

#### School Pride

[](#school-pride)

```
// School Pride (fires from both bottom corners)
Confetti::colors(['#0057B7', '#FFDD00'])->schoolPride()->shoot();
```

[![School Pride](./art/school-pride.gif)](./art/school-pride.gif)

### Multi-Shots (Crossfire)

[](#multi-shots-crossfire)

You can chain multiple cannons together using the `->then()` method:

```
Confetti::left()->count(150)
    ->then()
    ->right()->count(150)
    ->shoot();
```

[![Crossfire](./art/crossfire.gif)](./art/crossfire.gif)

### Advanced Customization

[](#advanced-customization)

You have 100% control over the physics engine. Customize shapes, gravity, colors, and more:

```
Confetti::center()
    ->count(300)
    ->spread(120)
    ->shapes(['star', 'circle'])
    ->colors(['#ff0000', '#00ff00', '#0000ff'])
    ->startVelocity(100)
    ->decay(0.8) // High friction (stops quickly in the air)
    ->gravity(0.5)
    ->flat(true) // 2D flat paper effect
    ->shoot();
```

[![Advanced Customization](./art/custom.gif)](./art/custom.gif)

### Complex Animations (Loops)

[](#complex-animations-loops)

Want to build your own custom timeline of explosions? Use Confetti::make() to retain the instance inside loops:

```
$confetti = Confetti::make();

for ($delay = 0; $delay < 3000; $delay += 500) {
    $confetti->center()->count(50)->delay($delay)->then();
}

$confetti->shoot();
```

[![Loops](./art/loop.gif)](./art/loop.gif)

Testing
-------

[](#testing)

```
composer test
```

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

[](#contributing)

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

Security Vulnerabilities
------------------------

[](#security-vulnerabilities)

Please review [our security policy](.github/SECURITY.md) on how to report security vulnerabilities.

Credits
-------

[](#credits)

- [Alex Syvolap](https://github.com/alexsyvolap)
- Canvas Confetti by [Kiril Vatev](https://github.com/catdad)

License
-------

[](#license)

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

###  Health Score

44

—

FairBetter than 90% of packages

Maintenance96

Actively maintained with recent releases

Popularity19

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity44

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

Total

3

Last Release

18d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/80973788?v=4)[Alex Syvolap](/maintainers/alexsyvolap)[@alexsyvolap](https://github.com/alexsyvolap)

---

Top Contributors

[![alexsyvolap](https://avatars.githubusercontent.com/u/80973788?v=4)](https://github.com/alexsyvolap "alexsyvolap (3 commits)")

---

Tags

laraveluifilamentfilament-pluginfilamentphpeffectsConfetticanvas-confettialexsyvolapfilament-confetti

###  Code Quality

TestsPest

Static AnalysisPHPStan

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/alexsyvolap-filament-confetti/health.svg)

```
[![Health](https://phpackages.com/badges/alexsyvolap-filament-confetti/health.svg)](https://phpackages.com/packages/alexsyvolap-filament-confetti)
```

###  Alternatives

[dotswan/filament-map-picker

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

127173.7k3](/packages/dotswan-filament-map-picker)[jibaymcs/filament-tour

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

12351.0k](/packages/jibaymcs-filament-tour)[rawilk/profile-filament-plugin

Profile &amp; MFA starter kit for filament.

3913.7k](/packages/rawilk-profile-filament-plugin)[wsmallnews/filament-nestedset

Filament nestedset tree builder powered by kalnoy/nestedset with Filament v4 and v5 support

196.5k14](/packages/wsmallnews-filament-nestedset)[lara-zeus/popover

Zeus Popover is filamentphp component to show a Popover with custom content in tables and infolist

3178.9k4](/packages/lara-zeus-popover)[marcelweidum/filament-passkeys

Use passkeys in your filamentphp app

6643.3k](/packages/marcelweidum-filament-passkeys)

PHPackages © 2026

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