PHPackages                             michaelesmith/dyndns-processor-cache - 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. michaelesmith/dyndns-processor-cache

ActiveLibrary

michaelesmith/dyndns-processor-cache
====================================

a processor for the dyndns-kit framework to allow processors to be cached

0.1.0(7y ago)09MITPHP

Since Nov 2Pushed 7y ago1 watchersCompare

[ Source](https://github.com/michaelesmith/dyndns-processor-cache)[ Packagist](https://packagist.org/packages/michaelesmith/dyndns-processor-cache)[ RSS](/packages/michaelesmith-dyndns-processor-cache/feed)WikiDiscussions master Synced 2mo ago

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

[![Build Status](https://camo.githubusercontent.com/95dd5f2a25f09565eb0570b4a8905212db2566067874b4115778a2d670450dc0/68747470733a2f2f7472617669732d63692e6f72672f6d69636861656c65736d6974682f64796e646e732d70726f636573736f722d63616368652e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/michaelesmith/dyndns-processor-cache)

What is this?
=============

[](#what-is-this)

This is a processor for the dyndns-kit framework to allow other processors to be cached via [PSR-6](https://www.php-fig.org/psr/psr-6/) so that they are only called with new or updated query information. If you don't know what DynDNS-Kit is take a [look](https://github.com/michaelesmith/dyndns-kit).

Install
=======

[](#install)

`composer require "michaelesmith/dyndns-processor-cache"`

You will also need a PSR-6 compatible cache library such as `"cache/cache"` or `"symfony/cache"`.

How do I use it
===============

[](#how-do-i-use-it)

To see a full example usage please refer to the [example project](https://github.com/michaelesmith/dyndns-example).

Basic usage
-----------

[](#basic-usage)

```
$cacheProcessor = new CacheProcessor(
    new JsonProcessor(__DIR__ . '/var/dns.json'),
    new FilesystemCachePool(
        new \League\Flysystem\Filesystem(
            new \League\Flysystem\Adapter\Local(__DIR__ . '/../var/')
        )
    )
);
```

This example uses the [League Flysystem](https://github.com/thephpleague/flysystem) cache library but any one could be used. In this example only the initial request or one with a new hostname or new ip would fall through to the embedded processor. This is useful for processors that tend to be expensive, especially if the data rarely changes which is usually the case with most DynDNS implementations.

Contributing
============

[](#contributing)

Have an idea to make something better? Submit a pull request. PR's make the open source world turn. 🌎 🌏 🌍 ![:octocat:](https://github.githubassets.com/images/icons/emoji/octocat.png ":octocat:") Happy Coding!

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity51

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

2745d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/02cd7a5417015ea4b37ad2b111bde525384de978cf5b2bbf9ef9080ac90342e5?d=identicon)[michaelesmith](/maintainers/michaelesmith)

---

Top Contributors

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

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/michaelesmith-dyndns-processor-cache/health.svg)

```
[![Health](https://phpackages.com/badges/michaelesmith-dyndns-processor-cache/health.svg)](https://phpackages.com/packages/michaelesmith-dyndns-processor-cache)
```

###  Alternatives

[symfony/symfony

The Symfony PHP framework

31.3k86.3M2.2k](/packages/symfony-symfony)[doctrine/dbal

Powerful PHP database abstraction layer (DBAL) with many features for database schema introspection and management.

9.7k578.4M5.6k](/packages/doctrine-dbal)[symfony/cache

Provides extended PSR-6, PSR-16 (and tags) implementations

4.2k348.9M2.5k](/packages/symfony-cache)[google/auth

Google Auth Library for PHP

1.4k272.7M161](/packages/google-auth)[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.4k5.6M648](/packages/sylius-sylius)[nelmio/api-doc-bundle

Generates documentation for your REST API from attributes

2.3k63.6M232](/packages/nelmio-api-doc-bundle)

PHPackages © 2026

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