From 26b03a4241656ae02566e9da4f8d66bea30cd1f3 Mon Sep 17 00:00:00 2001 From: Jonathan Miller <1+jmiller@noreply.git.mokoconsulting.tech> Date: Mon, 13 Jul 2026 01:04:08 +0000 Subject: [PATCH] docs: refresh for 02.61.0 --- Home.md | 128 ++++++++++++++++++-------------------------------------- 1 file changed, 41 insertions(+), 87 deletions(-) diff --git a/Home.md b/Home.md index 62a62c2..7268177 100644 --- a/Home.md +++ b/Home.md @@ -1,103 +1,57 @@ # MokoSuiteBackup -Full-site backup and restore for Joomla — database, files, and configuration. +Full-site backup and restore for Joomla — database, files, and configuration. A modern replacement for Akeeba Backup Pro, built as a native Joomla 6 package with pre-update/pre-uninstall safety backups, content snapshots, remote storage, encryption, a REST API, scheduled tasks, and native CLI commands. -| Field | Value | +## Overview + +| Item | Value | |---|---| | **Package** | `pkg_mokosuitebackup` | -| **Version** | 01.45.07 | -| **Type** | Joomla Package (9 sub-extensions + MokoSuiteClient) | -| **Joomla** | 6.x+ | -| **PHP** | 8.3+ | +| **Version** | 02.60.00 | +| **Joomla** | 6.x or later (compatible with 4.x / 5.x update/uninstall flows) | +| **PHP** | 8.3 or later | | **License** | GPL-3.0-or-later | +| **Author** | Moko Consulting | ---- +## Package contents + +MokoSuiteBackup installs as a single package that bundles the following sub-extensions: + +| Sub-extension | Type | Purpose | +|---|---|---| +| `com_mokosuitebackup` | Component | Admin backend, backup engine, profiles, records, snapshots, Web Services API resources, CLI script | +| `plg_system_mokosuitebackup` | System plugin | Pre-update / pre-uninstall interception, hourly retention cleanup | +| `plg_task_mokosuitebackup` | Task plugin | Scheduled Tasks integration (Run Backup Profile / Run Snapshot task types) | +| `plg_webservices_mokosuitebackup` | Web Services plugin | REST API for backups, profiles, downloads, and snapshot injection | +| `plg_console_mokosuitebackup` | Console plugin | Native `joomla` CLI commands (run, list, profiles, restore, cleanup, snapshot) | +| `plg_actionlog_mokosuitebackup` | Action Log plugin | User Action Log entries for backup events | +| `plg_quickicon_mokosuitebackup` | Quick Icon plugin | Control Panel quick icon | +| `plg_content_mokosuitebackup` | Content plugin | Content-side integration | +| `mod_mokosuitebackup_cpanel` | Admin module | cPanel dashboard module | ## Guides -- [Installation](guides/Installation) -- [Configuration](guides/Configuration) -- [Backup Profiles](Backup-Profiles) -- [Scheduled Tasks](guides/Scheduled-Tasks) -- [CLI Usage](guides/CLI-Usage) -- [Akeeba Migration](guides/Akeeba-Migration) +- [Installation](Installation) — install via the Joomla installer, update site, or CLI; requirements and verification +- [Configuration](Configuration) — every option in the component Options screen, grouped by tab +- [Pre-Update-Backup](Pre-Update-Backup) — automatic full-screen backups before extension/core updates and uninstalls +- [Snapshot-Transfer](Snapshot-Transfer) — export, import, and inject content snapshots between sites ## Reference -- [Database Schema](Database-Schema) -- [Architecture](Architecture) -- [REST API](reference/REST-API) -- [Remote Storage](reference/Remote-Storage) -- [Encryption](reference/Encryption) -- [Differential Backups](reference/Differential-Backups) -- [Changelog](Changelog) -- [Troubleshooting](guides/Troubleshooting) - ---- +- [Changelog](Changelog) — release history through 02.60.00 ## Features -### Backup -- Full site, database-only, files-only, differential -- Pre-flight validation before backup starts -- Auto-verify archive integrity after creation -- Archive formats: ZIP, tar.gz, 7z -- AES-256 encryption (ZIP) or 7z native encryption -- Data sanitization: clear passwords, emails, sessions -- Manual purge by date with count preview - -### Content Snapshots -- Lightweight JSON snapshots of articles, categories, modules -- Includes tags, custom fields, workflow associations -- Restore: Replace / Merge / Selective article restore -- Scheduled snapshot task + automatic retention - -### Remote Storage -- Multi-remote: multiple destinations per profile (SFTP + S3 + GDrive simultaneously) -- SFTP with SSH key file auth + remote directory browser -- Amazon S3 (and S3-compatible) -- Google Drive with OAuth2 -- FTP/FTPS -- Graceful degradation — local backup preserved if upload fails - -### MokoRestore Standalone Wizard -- 9-step restore wizard that works without Joomla installed -- Per-table conflict resolution: Replace / Skip / Merge / Data Only -- Post-restore: reset passwords, hits, versions, sessions, cache -- Auto-detect sanitized passwords and prompt for reset -- Standalone mode: restore script scans directory for ZIP files -- Customizable restore script filename per profile - -### Bundled: MokoSuiteClient -- Full MokoSuiteClient package installed automatically alongside MokoSuiteBackup -- Admin dashboard, security firewall, tenant management, developer tools - -### Admin Dashboard -- CPanel module with backup status and quick action buttons -- Snapshot widget, backup trend chart, storage breakdown -- System health checks -- Backup comparison: side-by-side diff between two backups -- Archive browser: view files inside backup without extracting - -### Security -- 14 ACL permissions with full enforcement across all controllers -- Data sanitization: passwords, emails, sessions -- SSH key stored base64-encoded, never exposed in UI -- Path traversal protection on all archive extraction -- Webcron secret hardening + IP whitelist - -### CLI -- `mokosuitebackup:run` • `mokosuitebackup:restore` • `mokosuitebackup:snapshot` -- `mokosuitebackup:list` • `mokosuitebackup:profiles` • `mokosuitebackup:cleanup` - -### REST API -- Backup: start, list, download, delete, profiles -- Snapshots: create, list, restore, delete, download - ---- - -## Quick Start - -1. Download from [Releases](https://git.mokoconsulting.tech/MokoConsulting/MokoSuiteBackup/releases) -2. Install via Extensions > Install -3. Components > MokoSuiteBackup > Dashboard > Backup Now \ No newline at end of file +- **Full-screen pre-update / pre-uninstall backup** — before a core Joomla update, an extension update, or an extension uninstall, MokoSuiteBackup runs a stepped, full-page backup with a real progress bar (Akeeba-style), then automatically continues the original action. Fires once per Update action for every extension, super-user only, and gated by the `backup_before_update` / `backup_before_uninstall` options. +- **Content snapshot transfer & master→slave injection** — export a content snapshot as a portable `.msbsnap` file (zip of `manifest.json` + `snapshot.json` with a SHA-256 integrity check), import one on another site, or push one directly into a slave site via the injection API. Conflict modes: **overwrite**, **create**, and **duplicate** (remapped IDs). +- **Remote retention pruning** — when a backup is pruned by age or count, its archive is also deleted from every enabled remote destination (SFTP / FTP / S3 / Google Drive), not just the local copy. +- **Remote storage** — upload archives to SFTP, FTP, Amazon S3, and Google Drive, configured per destination, with an optional "keep local copy" per destination. +- **Encryption** — protect backup archives. +- **Differential backups** — capture only what changed since a prior backup. +- **REST API** — manage backups, profiles, downloads, deletion, and snapshot injection over Joomla Web Services. +- **Scheduled tasks** — run backup profiles and snapshots on a schedule through Joomla's Scheduled Tasks (com_scheduler). +- **CLI** — native `joomla mokosuitebackup:*` console commands plus a standalone cron script. +- **Restore options** — no restore script, a wrapped restore, or a standalone `restore.php` generated alongside the archive. +- **Data sanitization** — optionally sanitize passwords, emails, and sessions in the database dump. +- **Notifications** — email and ntfy notifications on success and/or failure. +- **Web-cron support** — trigger backups via a secret-protected URL with optional IP whitelisting.