WP Manifestindependent plugin directory
manifest / admin / website-maintenance-assistant-wordpress-plugin

Website Maintenance Assistant

WordPress plugin that scans your site's database, security, SEO, and performance, then fixes the safe issues in one click — no AI calls, nothing leaves your site.

by Jesson Paloma · github.com/jessonp/website-maintenance-assistant-wordpress-plugin

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/jessonp/website-maintenance-assistant-wordpress-plugin/archive/refs/heads/main.zip

Readme

Website Maintenance Assistant

A WordPress plugin that scans your site's database, security, SEO, links, and performance, then tells you what to fix first — with real one-click fixes, not just a list of problems.

Free on WordPress.org (pending review). No external AI calls, no data leaves your site — every recommendation is generated locally from your own scan results.

Why

Most maintenance plugins hand you a wall of technical findings and leave you to prioritize them. This one scores your site's overall health, ranks the top issues by real impact, and lets you fix the safe, well-understood ones in a single click — with a preview of exactly what will change before anything happens.

Features

Five scanners, each measuring real data (no fabricated numbers):

Scanner Checks
Database Post revisions, expired transients, spam/trashed comments, autoloaded option bloat
Security Default admin username, debug mode, XML-RPC, outdated plugins (by name), missing security headers, directory listing
SEO Missing/duplicate titles, missing meta descriptions (when an SEO plugin is active), missing image ALT text, multiple H1 headings, search-engine visibility — each with links to the specific pages affected
Broken Links Real HTTP checks against links found in published content (capped and cached, not an exhaustive crawl)
Performance Actual measured CSS/JS payload per plugin/theme via a loopback request, persistent object cache detection, oversized images in the media library

One-click fixes, each behind a mandatory preview → confirm flow:

  • Reversible (Disable XML-RPC, Disable Debug Mode) — get a real Undo, including a safe backup-and-atomic-rewrite of wp-config.php for the debug toggle.
  • Destructive (Clean Database, Remove Broken Link) — no undo promised; the preview shows exact counts, and re-checks state at confirm-time so it can never silently act on stale data.

Requirements

  • WordPress 6.0+
  • PHP 7.4+
  • Node.js 18+ (only if building from source — the release zip ships a pre-built bundle)

Installation

  1. Download the latest release zip (or build from source, see below).
  2. Upload via Plugins → Add New → Upload Plugin in wp-admin, or extract to wp-content/plugins/.
  3. Activate, then go to Maintenance in the wp-admin sidebar to run your first scan.

Development

git clone <this-repo> wp-content/plugins/website-maintenance-assistant
cd wp-content/plugins/website-maintenance-assistant
npm install
npm run build     # one-off production build
npm run dev       # rebuild on change

No Composer dependency — the PHP side has zero third-party dependencies and uses a small hand-rolled PSR-4 autoloader (includes/Autoloader.php), so there's no build step required on the PHP side.

The admin UI is a Vue 3 + Tailwind CSS single-page app (assets/src/), built with Vite into a single IIFE bundle (assets/dist/app.js) and enqueued only on the plugin's own admin screens.

Architecture

includes/
  Scanners/    Scanner_Interface + one class per scanner, assembled by Scanner_Registry
  Fixes/       Fix_Interface + one class per fix, assembled by Fix_Registry
  Engine/      Recommendation_Engine (rule-based prioritization) + Health_Score_Calculator
  Rest/        REST controllers under the `awma/v1` namespace
  Storage/     Options-API-backed repositories for scan reports and fix history
  Admin/       wp-admin page registration + asset enqueueing
  Support/     Capability checks, Pro-teaser content

Every scanner implements one contract (get_id(), get_label(), is_available(), scan(): Scan_Result); every fix implements another (preview(), apply(), undo()). Adding a new scanner or fix means writing one small class and registering it — nothing else in the system needs to change.

Extension points (for a future Pro tier or third-party add-ons — all currently ungated):

awma_available_scanners, awma_available_fixes, awma_recommendation_rules, awma_health_score_weights, awma_scan_result, awma_fix_allowed, awma_scan_cap_posts, awma_scan_cap_links, awma_required_capability

Roadmap

The free plugin is fully functional as described above. A Pro tier is planned (AI-generated explanations, scheduled scans + email reports, uptime monitoring, Core Web Vitals tracking, white-label reports, multi-site dashboard) but not yet built — there's no payment backend or license server today.

License

GPL v2 or later — see LICENSE.

Buy me a coffee

https://ko-fi.com/jessonpaloma

Read the full README on GitHub →