PHPackages                             ali-eltaweel/directory-scanner - 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. ali-eltaweel/directory-scanner

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

ali-eltaweel/directory-scanner
==============================

Resursively scan directories.

1.0.0(10mo ago)00PHPPHP ^8.1

Since Jun 24Pushed 10mo agoCompare

[ Source](https://github.com/ali-eltaweel/directory-scanner)[ Packagist](https://packagist.org/packages/ali-eltaweel/directory-scanner)[ RSS](/packages/ali-eltaweel-directory-scanner/feed)WikiDiscussions master Synced 1mo ago

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

Directory Scanner
=================

[](#directory-scanner)

- [Directory Scanner](#directory-scanner)
    - [Installation](#installation)
    - [Usage](#usage)

---

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

[](#installation)

Install *directory-scanner* via Composer:

```
composer require ali-eltaweel/directory-scanner
```

Usage
-----

[](#usage)

```
$scanner = new DirectoryScanner\DirectoryScanner();
```

```
$scanner = new DirectoryScanner\DirectoryScanner(

  traversal: DirectoryScanner\DirectoryScannerTraversal::ChildrenFirst
);
```

```
$scanner = new DirectoryScanner\DirectoryScanner(

  predicate: Predkit\Predicate::fromCallable(fn (string $file) => basename($file) != 'vendor')
);
```

```
foreach ($scanner->scan('path/to/dir') as $file) {

  // ...
}
```

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance53

Moderate activity, may be stable

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity45

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

Unknown

Total

1

Last Release

324d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/7564e10ba11b25d8700726a92f669e38be2ff9191e8f6ccdfafc36678ffab2b8?d=identicon)[ali-eltaweel](/maintainers/ali-eltaweel)

---

Top Contributors

[![ali-eltaweel](https://avatars.githubusercontent.com/u/45892756?v=4)](https://github.com/ali-eltaweel "ali-eltaweel (2 commits)")

### Embed Badge

![Health badge](/badges/ali-eltaweel-directory-scanner/health.svg)

```
[![Health](https://phpackages.com/badges/ali-eltaweel-directory-scanner/health.svg)](https://phpackages.com/packages/ali-eltaweel-directory-scanner)
```

###  Alternatives

[phannaly/php-datetime-khmer

The PHP library for convert datetime to Khmer

1510.3k](/packages/phannaly-php-datetime-khmer)[moosend/website-tracking

By installing the Moosend PHP Tracking library you are can track page views, product views, add to cart events and successful purchases. You can later use these details to segment your user base, run automations, check how successful your latest promo has been and how many conversions your landing page has led to.

1020.9k1](/packages/moosend-website-tracking)

PHPackages © 2026

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