PHPackages                             badchoice/gandalf - 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. badchoice/gandalf

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

badchoice/gandalf
=================

User device tracker

10PHP

Since Aug 17Pushed 9y ago1 watchersCompare

[ Source](https://github.com/BadChoice/gandalf)[ Packagist](https://packagist.org/packages/badchoice/gandalf)[ RSS](/packages/badchoice-gandalf/feed)WikiDiscussions master Synced 4w ago

READMEChangelogDependenciesVersions (1)Used By (0)

Gandalf
=======

[](#gandalf)

A simple library to protect your `Laravel` application by fingerprinting each user Login

Simply do

```
  Gandalf::trackUser($allowNewUsers)->sendEmailIfNew('emails.newDevice','anEmail@example.com');

```

###  Health Score

19

—

LowBetter than 9% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity2

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity41

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.

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/93900?v=4)[Jordi Puigdellívol](/maintainers/BadChoice)[@BadChoice](https://github.com/BadChoice)

---

Top Contributors

[![BadChoice](https://avatars.githubusercontent.com/u/93900?v=4)](https://github.com/BadChoice "BadChoice (2 commits)")

### Embed Badge

![Health badge](/badges/badchoice-gandalf/health.svg)

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

###  Alternatives

[rinvex/countries

Rinvex Countries is a simple and lightweight package for retrieving country details with flexibility. A whole bunch of data including name, demonym, capital, iso codes, dialling codes, geo data, currencies, flags, emoji, and other attributes for all 250 countries worldwide at your fingertips.

1.7k7.8M58](/packages/rinvex-countries)[pyaesone17/active-state

Active State Checker For Laravel Url

4762.8k2](/packages/pyaesone17-active-state)[aozisik/php-turkce

Turkish language friendly string manipulation functions for PHP.

292.1k](/packages/aozisik-php-turkce)

PHPackages © 2026

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