docs: update Home wiki with snapshots, SFTP, dashboard, restore features

2026-06-23 14:11:44 +00:00
parent 8e20017c78
commit 15b0ac2c43
+43 -17
@@ -18,14 +18,15 @@ Full-site backup and restore for Joomla — database, files, and configuration.
- [Installation](guides/Installation) — Download, install, and configure
- [Configuration](guides/Configuration) — Component settings, profiles, dashboard
- [Backup Profiles](guides/Backup-Profiles) — Create and manage backup profiles
- [Scheduled Tasks](guides/Scheduled-Tasks) — Automate backups with Joomla scheduler
- [CLI Usage](guides/CLI-Usage) — Command-line backup and management
- [Content Snapshots](guides/Content-Snapshots) — Lightweight article/module snapshots and restore
- [Scheduled Tasks](guides/Scheduled-Tasks) — Automate backups and snapshots with Joomla scheduler
- [CLI Usage](guides/CLI-Usage) — Command-line backup, snapshot, and restore
- [Akeeba Migration](guides/Akeeba-Migration) — Migrate from Akeeba Backup Pro
## Reference
- [REST API](reference/REST-API) — Remote backup management endpoints
- [Remote Storage](reference/Remote-Storage) — FTP, S3, Google Drive upload
- [REST API](reference/REST-API) — Backup and snapshot API endpoints
- [Remote Storage](reference/Remote-Storage) — SFTP, S3, Google Drive upload
- [Encryption](reference/Encryption) — AES-256 archive encryption
- [Differential Backups](reference/Differential-Backups) — Incremental backup strategy
- [Troubleshooting](guides/Troubleshooting) — Common issues and solutions
@@ -38,6 +39,16 @@ Full-site backup and restore for Joomla — database, files, and configuration.
- Full site (database + files + configuration)
- Database-only and files-only modes
- Differential — only files changed since last full backup
- Pre-flight validation — checks directory, disk space, extensions, credentials before starting
- Auto-verify integrity after creation
### Content Snapshots
- Lightweight JSON snapshots of articles, categories, and modules
- Includes tags, custom fields, workflow associations
- Restore modes: Replace (clean slate) or Merge (upsert)
- Selective article restore — browse and pick individual articles
- Automatic retention (max count + max age)
- Scheduled snapshot task via com_scheduler
### Archive Formats
- ZIP with optional AES-256 encryption
@@ -45,41 +56,51 @@ Full-site backup and restore for Joomla — database, files, and configuration.
- Configurable naming with date/host/profile placeholders
### Scheduling & Automation
- Joomla Scheduled Tasks integration
- Web cron endpoint for shared hosting
- Joomla Scheduled Tasks integration (backups + snapshots)
- Web cron endpoint for shared hosting (random secret, IP whitelist)
- Pre-action backups — auto-backup before extension update or uninstall
- CLI: `php cli/joomla.php mokosuitebackup:run --profile=1`
- CLI: `mokosuitebackup:run`, `mokosuitebackup:snapshot`, `mokosuitebackup:restore`
### Remote Storage
- FTP / FTPS with passive mode
- SFTP (SSH File Transfer) with key file authentication — key stored base64-encoded in database
- Amazon S3 (and S3-compatible: DigitalOcean Spaces, Wasabi, MinIO)
- Google Drive with OAuth2 and resumable uploads
- Graceful degradation — local backup preserved if upload fails
### Notifications
- Email on success and/or failure per profile
- ntfy push notifications — instant alerts to phone or desktop
- Per-profile topic, server, and access token configuration
- Notifications for restore operations (site restore, snapshot create/restore)
### Dashboard
- Last backup status, next scheduled, total count, storage used
- Snapshot widget — latest snapshot info, type badges, item counts
- Backup trend chart — CSS bar chart showing 30-day backup sizes
- Storage breakdown — per-profile disk usage
- System health checks
### Security
- Granular ACL permissions — separate run, download, and restore
- Granular ACL permissions — separate run, download, restore, snapshot manage
- Configuration sanitization — credentials stripped from backups
- SSH key stored base64-encoded in database, never exposed in UI
- Webcron secret hardening — strength meter, rejects weak patterns
- MokoRestore security gate — filesystem verification before restore
- Abstract DB prefix for cross-server portability
- Path traversal protection on all archive extraction
### Restore
- In-admin restore with file and database options
- AJAX stepped restore — prevents timeout on shared hosting
- CLI restore with --files-only, --db-only, --password options
- MokoRestore standalone wizard — works without Joomla installed
- Configuration rebuild from backup template + fresh credentials
- Admin password reset and client provisioning
- Backup comparison — select two backups for side-by-side diff
- Archive browser — view files inside a backup without extracting
### Per-Profile Management
- Unlimited profiles with independent settings
- Per-profile retention (days + count)
- Per-profile exclusions and notifications
---
## REST API
### REST API
| Endpoint | Description |
|---|---|
@@ -88,6 +109,11 @@ Full-site backup and restore for Joomla — database, files, and configuration.
| `GET /api/v1/mokosuitebackup/backup/:id/download` | Download archive |
| `DELETE /api/v1/mokosuitebackup/backup/:id` | Delete backup record |
| `GET /api/v1/mokosuitebackup/profiles` | List backup profiles |
| `GET /api/v1/mokosuitebackup/snapshots` | List snapshots |
| `POST /api/v1/mokosuitebackup/snapshot` | Create snapshot |
| `POST /api/v1/mokosuitebackup/snapshot/:id/restore` | Restore snapshot |
| `DELETE /api/v1/mokosuitebackup/snapshot/:id` | Delete snapshot |
| `GET /api/v1/mokosuitebackup/snapshot/:id/download` | Download snapshot JSON |
---
@@ -96,7 +122,7 @@ Full-site backup and restore for Joomla — database, files, and configuration.
1. Download from [Releases](https://git.mokoconsulting.tech/MokoConsulting/MokoSuiteBackup/releases)
2. Install via Extensions > Install
3. Components > MokoSuiteBackup > Backup Now
4. Configure notifications in profile settings
4. Configure notifications and remote storage in profile settings
---