millipress / millicache
WordPress Full-Page Cache based on Rules & Flags. Delivers flexible, scalable caching workflows backed by Redis and ValKey in-memory stores.
Installs: 51
Dependents: 0
Suggesters: 0
Security: 0
Stars: 5
Watchers: 1
Forks: 0
Open Issues: 4
Type:wordpress-plugin
pkg:composer/millipress/millicache
Requires
- php: >=7.4
Requires (Dev)
- millipress/millirules: ^0.6.0
- mockery/mockery: ^1.6
- pestphp/pest: ^2.0
- php-stubs/wp-cli-stubs: ^2.10
- phpcompatibility/phpcompatibility-wp: *
- phpstan/extension-installer: ^1.3
- phpstan/phpstan: @stable
- phpstan/phpstan-deprecation-rules: ^1.1
- predis/predis: ^2.2
- roave/security-advisories: dev-latest
- swissspidy/phpstan-no-private: ^0.2.0
- szepeviktor/phpstan-wordpress: ^1.3
- wp-coding-standards/wpcs: ^3.0
Suggests
- ext-zlib: Allows MilliCache to compress the cache with zlib.
- dev-main
- v1.0.0-rc.5
- v1.0.0-rc.4
- v1.0.0-rc.3
- v1.0.0-rc.2
- v1.0.0-rc.1
- v1.0.0-beta.5
- v1.0.0-beta.4
- v1.0.0-beta.3
- v1.0.0-beta.2
- v1.0.0-beta.1
- dev-release-please--branches--main--components--millicache
- dev-feat/release-please-clean
- dev-revert-29-release-please--branches--main--components--millicache
- dev-fix/settings-apply-filters-guard
- dev-archive/pre-cleanup-2025-12
This package is auto-updated.
Last update: 2025-12-22 15:28:12 UTC
README
High-performance full-page caching for WordPress using Redis, ValKey, KeyDB, or Dragonfly.
MilliCache stores complete HTML pages in memory and serves them in under 10ms — without loading WordPress. Combined with intelligent cache flags and flexible rules, it's designed for sites that need both speed and control.
Important
This plugin is approaching a stable release. Please report any issues you encounter.
Key Features
- Lightning Fast — In-memory caching with sub-10ms response times
- Cache Flags — Tag pages for precise, targeted cache invalidation
- Flexible Rules — Control caching behavior with condition-based rules
- Multisite Ready — Per-site isolation, network-wide management
- Horizontal Scaling — Multiple web servers can share a single Redis instance
- WP-CLI Integration — Full command-line cache management
- Multiple Backends — Redis, ValKey, KeyDB, or Dragonfly
Quick Start
-
Install via ZIP download or Composer:
composer require millipress/millicache
-
Activate the plugin in WordPress admin
-
Enable caching in
wp-config.php:define( 'WP_CACHE', true ); // Optional: Configure Redis connection define( 'MC_STORAGE_HOST', '127.0.0.1' ); define( 'MC_STORAGE_PORT', 6379 );
-
Verify in Settings UI, Browser Developer Tools, or with WP-CLI:
wp millicache test wp millicache status
Documentation
Full documentation is available in the docs/ folder:
| Section | Description |
|---|---|
| Getting Started | Introduction and installation |
| Configuration | Settings and constants reference |
| Cache Flags | Targeted cache invalidation |
| Rules | Condition-based caching control |
| Usage | How caching works, clearing, multisite |
| WP-CLI | Command-line reference |
| Developers | Architecture, hooks, API |
| Storage Backends | Redis, ValKey, KeyDB, Dragonfly |
| Troubleshooting | Common issues and FAQ |
Requirements
- PHP 7.4+ (8.x recommended)
- WordPress 5.6+
- Redis-compatible server (Redis, ValKey, KeyDB, or Dragonfly)
Testing
MilliCache uses PHPUnit, PHPStan, and Playwright for testing. To run tests locally:
# Start test environment (requires Docker + Node.js) npm install npm run env:start # Run e2e tests npm run env:e2e # Stop environment npm run env:stop
Test WordPress available at http://localhost:8888 (login: admin / password)
Useful Commands
npm run env:cli wp millicache stats # Run WP-CLI commands npm run env:redis-cli # Open Redis CLI npm run env:reset # Reset environment
Credits
MilliCache was initially inspired by:
- Page Cache Red by Pressjitsu
- Cachify by PluginKollektive
- Cache Enabler by KeyCDN