PHPackages                             michaelthedev/superban - 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. [Security](/categories/security)
4. /
5. michaelthedev/superban

ActiveLibrary[Security](/categories/security)

michaelthedev/superban
======================

Laravel package to ban clients completely for a period of time

v0.2.2(2y ago)04MITPHPPHP ^8.1

Since Dec 22Pushed 2y ago1 watchersCompare

[ Source](https://github.com/michaelthedev/superban)[ Packagist](https://packagist.org/packages/michaelthedev/superban)[ RSS](/packages/michaelthedev-superban/feed)WikiDiscussions main Synced yesterday

READMEChangelog (4)Dependencies (4)Versions (5)Used By (0)

Laravel Superban
================

[](#laravel-superban)

 [Report Bug](https://github.com/michaelthedev/superban/issues) · [Request Feature](https://github.com/michaelthedev/superban/issues)

About The Project
-----------------

[](#about-the-project)

Superban is a Laravel package that provides a simple and flexible way to ban clients from your API based on their request behavior. It allows you to specify a number of requests after which a client will be banned for a given time interval. The package is built on top of Laravel's built-in rate limiting features and supports different cache drivers.

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

[](#installation)

You can install the package via composer:

```
composer require michaelthedev/superban
```

After installing the package, you need to register the package's service provider in the `config/app.php` file of your Laravel project:

```
'providers' => [
    // ...
    Michaelthedev\Superban\SuperbanServiceProvider::class,
],
```

Then, publish the package's configuration file by running the following command:

```
php artisan vendor:publish --provider="Michaelthedev\Superban\SuperbanServiceProvider"
```

Configuration
-------------

[](#configuration)

The package's configuration file is located at `config/superban.php`. Here you can specify the cache driver to use (Redis, Database, etc.) and the parameters for banning clients.

```
return [
    'cache_driver' => env('SUPERBAN_CACHE_DRIVER', env('CACHE_DRIVER', 'file')),
    'requests_before_ban' => env('SUPERBAN_REQUESTS_BEFORE_BAN', 200),
    'ban_after' => env('SUPERBAN_BAN_AFTER', 2),
    'ban_length' => env('SUPERBAN_BAN_LENGTH', 1440),
];
```

Usage
-----

[](#usage)

After installing and configuring the package, you can use the `superban` middleware on your routes like so:

```
Route::middleware(['superban:200,2,1440'])->group(function () {
   Route::post('/thisroute', function () {
       // ...
   });

   Route::post('anotherroute', function () {
       // ...
   });
});
```

In the above example, `200` is the number of requests, `2` is the amount of minutes for the period of time the number of requests can happen, and `1440` is the amount of minutes for which the user is banned for.

The `superban` middleware takes into consideration the ability to ban by user id, IP address and email. You can apply it either for specific or all routes.

License
-------

[](#license)

The Superban package is open-sourced software licensed under the [MIT license](http://opensource.org/licenses/MIT).

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

[](#contributing)

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

1. Fork the Project
2. Create your Feature Branch
3. Commit your Changes
4. Push to the Branch
5. Open a Pull Request

###  Health Score

20

—

LowBetter than 13% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community7

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

Total

4

Last Release

924d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/55f23d2b3b3943c0fdab8e8e5a86ec805a950017867d08b7a6a0ac74f780879a?d=identicon)[michaelthedev](/maintainers/michaelthedev)

---

Top Contributors

[![michaelthedev](https://avatars.githubusercontent.com/u/39175160?v=4)](https://github.com/michaelthedev "michaelthedev (15 commits)")

###  Code Quality

TestsPest

### Embed Badge

![Health badge](/badges/michaelthedev-superban/health.svg)

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

###  Alternatives

[unopim/unopim

UnoPim Laravel PIM

10.5k2.4k](/packages/unopim-unopim)[statamic-rad-pack/runway

Eloquently manage your database models in Statamic.

135224.7k7](/packages/statamic-rad-pack-runway)[api-platform/laravel

API Platform support for Laravel

58171.4k14](/packages/api-platform-laravel)[ecotone/laravel

Ecotone for Laravel — CQRS, Event Sourcing, Sagas, Durable Workflows, and Outbox on top of Laravel Queue, via PHP attributes.

21318.6k3](/packages/ecotone-laravel)[duncanmcclean/statamic-cargo

Comprehensive e-commerce addon for Statamic. Build bespoke e-commerce sites without the complexity.

3416.7k](/packages/duncanmcclean-statamic-cargo)

PHPackages © 2026

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