WP Manifestindependent plugin directory
manifest / media / smart-webp-flow

Smart WebP Flow & Media Sync

Lightweight and modern WebP converter for WordPress

★ 0stars

Install

Download source zip No release zip yet

This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/ijplabs/smart-webp-flow/archive/refs/heads/main.zip
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

Lightweight, robust, and modern WebP image conversion and synchronization engine for WordPress.

Converts JPG/PNG media uploads automatically, provides non-blocking chunked bulk synchronization with zero website downtime, and seamlessly synchronizes image URLs inside post content.


🚀 Key Features

  • Instant Upload Interception: Automatically converts uploaded JPG and PNG files into high-efficiency WebP format across masters and all registered thumbnail sub-sizes.
  • Safe Retention Policy (Default): Automatically preserves original JPG/PNG files as backup (keep_original) to ensure full rollback capabilities without risking permanent data loss.
  • Autonomous Bulk Synchronization:
    • Keyset-based pagination (ID > :last_id) avoiding heavy database offset penalties.
    • Concurrency transient mutex lock to prevent worker collisions.
    • Single-use cryptographic dispatch tokens for self-looping asynchronous background conversion.
    • Real-time server telemetry pacing to maintain 0% CPU spikes for site visitors.
  • Dual-Layer Post Content Synchronizer:
    • Dynamic Frontend Filter: Automatic on-the-fly replacement of image URLs in the_content on frontend without touching the database.
    • Database Content Migrator Wizard: Step-by-step scanner with dry-run diff preview and atomic post rollback snapshots.
  • Intuitive Admin Dashboard: Native WordPress dashboard tabs with real-time server health metrics, bulk sync progress, migrator wizard, and granular compression parameters.

📋 System Requirements

  • WordPress: 5.8 or higher
  • PHP: 7.4 or higher (fully tested on PHP 8.0, 8.2, and 8.5)
  • Image Extensions: PHP Imagick (recommended) or PHP GD with WebP support
  • Optional: External REST API microservice driver for remote computing offload

🛠️ Architecture & Directory Structure

smart-webp-flow/
├── assets/
│   ├── css/admin.css       # Native WordPress dashboard styling
│   └── js/admin.js         # Tab switching and REST polling client
├── src/
│   ├── Admin/              # Dashboard pages and notices
│   ├── Background/         # Mutex locking, throttling, async worker
│   ├── Common/             # Constants and configurations
│   ├── Controllers/        # WordPress REST API v1 endpoints
│   ├── Engines/            # Imagick, GD, and External API drivers
│   ├── Services/           # Upload interceptor, metadata, post content
│   ├── Autoloader.php      # PSR-4 Autoloader
│   └── Plugin.php          # Singleton kernel container
├── smart-webp-flow.php     # Main plugin entry point
└── uninstall.php           # Clean uninstaller

📦 Distribution & Releases

Official production releases are packaged as standalone ZIP archives and distributed via:

  1. GitHub Releases: https://github.com/ijplabs/smart-webp-flow/releases
  2. RustFS S3 Distribution Bucket: s3://ijplabs-wordpress/plugins/smart-webp-flow/

📄 License

This plugin is licensed under the GNU General Public License v2.0 or later.