PHPackages                             ndious/james - 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. ndious/james

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

ndious/james
============

v1.0.0(6y ago)11[2 issues](https://github.com/timber-dev-society/James/issues)[2 PRs](https://github.com/timber-dev-society/James/pulls)MITPHP

Since Feb 22Pushed 3y ago1 watchersCompare

[ Source](https://github.com/timber-dev-society/James)[ Packagist](https://packagist.org/packages/ndious/james)[ RSS](/packages/ndious-james/feed)WikiDiscussions master Synced 4d ago

READMEChangelogDependencies (6)Versions (4)Used By (0)

Super autonomous website content spy
====================================

[](#super-autonomous-website-content-spy)

usage
-----

[](#usage)

### Base

[](#base)

```
require 'vendor/autoload.php';

use James\{ Bond as OO7, M, Q, Equipments };

$q = (new Q())->addEquipment(new Equipments\Aston())
              ->addEquipment(new Equipments\Microfilm('/path/to/store/data'))
              ->addEquipment(new Equipments\Scanner());

$mission = new M('job-id', 'http://www.url-to-track.com', '.content:selector');

$OO7 = (new OO7($mission))->getEquipment($q);

$OO7->go();
```

### Events

[](#events)

To see a full fonctionnal example watch example.php

#### Something has change

[](#something-has-change)

```
// ...
use James\Events\State;

$OO7->on(State::HAS_CHANGE, function () {
  print 'Something new or updated' . PHP_EOL;
})->go();
```

#### Nothing has change

[](#nothing-has-change)

```
// ...
use James\Events\State;

$OO7->on(State::HAS_NOT_CHANGE, function () {
  print 'Nothing append from the last time' . PHP_EOL;
})->go();
```

#### Add event

[](#add-event)

```
// ...
use James\Events\Content;

$OO7->on(James\Content::ADDED, function ($event) {
  print 'New content available' . PHP_EOL;
  print $event->getAdded() . PHP_EOL;
})->go();
```

#### Update event

[](#update-event)

```
// ...
use James\Events\Content;

$OO7->on(Content::UPDATED, function ($event) {
  print 'Content has been updated' . PHP_EOL;
  print 'before : ' . PHP_EOL;
  print $event->getDeleted() . PHP_EOL;
  print 'after : ' . PHP_EOL;
  print $event->getAdded() . PHP_EOL;
})->go();
```

#### Delete event

[](#delete-event)

```
// ...
use James\Events\Content;

$OO7->on(Content::DELETED, function ($event) {
  print 'Content has been removed' . PHP_EOL;
  print $event->getDeleted() . PHP_EOL;
})->go();
```

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance0

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

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

2274d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/db013804420c66c5a7d6d012ff888ca6f9e230ea56f6cfc0a3806e0f7fc7f664?d=identicon)[ndious](/maintainers/ndious)

---

Top Contributors

[![ndious](https://avatars.githubusercontent.com/u/426139?v=4)](https://github.com/ndious "ndious (4 commits)")[![solevis](https://avatars.githubusercontent.com/u/556298?v=4)](https://github.com/solevis "solevis (1 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/ndious-james/health.svg)

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

###  Alternatives

[pocketmine/pocketmine-mp

A server software for Minecraft: Bedrock Edition written in PHP

3.5k74.6k86](/packages/pocketmine-pocketmine-mp)[civicrm/civicrm-core

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

728272.9k20](/packages/civicrm-civicrm-core)[friendsoftypo3/content-blocks

TYPO3 CMS Content Blocks - Content Types API | Define reusable components via YAML

96374.6k23](/packages/friendsoftypo3-content-blocks)[codefog/contao-haste

haste extension for Contao Open Source CMS

42650.8k139](/packages/codefog-contao-haste)[shyim/danger-php

Port of danger to PHP

8544.9k](/packages/shyim-danger-php)[dcblogdev/laravel-module-generator

Generate Laravel Modules from a template.

7710.1k1](/packages/dcblogdev-laravel-module-generator)

PHPackages © 2026

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