{"id":37227777,"url":"https://github.com/wsj-br/duplistatus","last_synced_at":"2026-03-01T02:30:22.670Z","repository":{"id":294533783,"uuid":"981702128","full_name":"wsj-br/duplistatus","owner":"wsj-br","description":"Web dashboard for monitoring Duplicati backups with overdue alerts, notifications, and backup logging.","archived":false,"fork":false,"pushed_at":"2026-02-28T13:26:44.000Z","size":167986,"stargazers_count":43,"open_issues_count":4,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2026-02-28T17:10:01.691Z","etag":null,"topics":["backup-management","backup-monitoring","backup-status","backup-utility","dashboard","docker","duplicati","monitoring","notifications","ntfy","overdue-detection","podman","smtp","web"],"latest_commit_sha":null,"homepage":"https://wsj-br.github.io/duplistatus/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wsj-br.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2025-05-11T17:48:04.000Z","updated_at":"2026-02-28T13:25:53.000Z","dependencies_parsed_at":"2025-05-25T01:36:29.545Z","dependency_job_id":"1384240b-c2db-41f3-9d6b-c9ea3bf5b126","html_url":"https://github.com/wsj-br/duplistatus","commit_stats":null,"previous_names":["wsj-br/duplidash","wsj-br/duplistatus"],"tags_count":25,"template":false,"template_full_name":null,"purl":"pkg:github/wsj-br/duplistatus","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wsj-br%2Fduplistatus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wsj-br%2Fduplistatus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wsj-br%2Fduplistatus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wsj-br%2Fduplistatus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wsj-br","download_url":"https://codeload.github.com/wsj-br/duplistatus/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wsj-br%2Fduplistatus/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29959009,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-01T01:47:18.291Z","status":"online","status_checked_at":"2026-03-01T02:00:07.437Z","response_time":124,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["backup-management","backup-monitoring","backup-status","backup-utility","dashboard","docker","duplicati","monitoring","notifications","ntfy","overdue-detection","podman","smtp","web"],"created_at":"2026-01-15T03:23:58.889Z","updated_at":"2026-03-01T02:30:22.619Z","avatar_url":"https://github.com/wsj-br.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n![duplistatus](documentation/static/img/duplistatus_banner.png)\n\n# **duplistatus** - Another [Duplicati](https://github.com/duplicati/duplicati) Dashboard\n\n![version](https://img.shields.io/badge/version-1.3.0-blue)\n\n\u003cbr/\u003e\n\nThis web application monitors and visualises backup operations from [Duplicati](https://github.com/duplicati/duplicati). **duplistatus** provides a comprehensive dashboard to track backup statuses, execution, metrics, and performance across multiple servers.\n\nIt also provides API endpoints that can be integrated with third-party tools such as [Homepage](https://gethomepage.dev/).\n\n\u003cbr/\u003e\n\n\u003c!-- START doctoc generated TOC please keep comment here to allow auto update --\u003e\n\u003c!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --\u003e\n**Table of Contents**\n\n- [Features](#features)\n- [Installation](#installation)\n- [Duplicati Servers Configuration (Required)](#duplicati-servers-configuration-required)\n- [User Guide](#user-guide)\n- [Screenshots](#screenshots)\n  - [Dashboard](#dashboard)\n  - [Backup History](#backup-history)\n  - [Backup Details](#backup-details)\n  - [Overdue Backups](#overdue-backups)\n  - [Overdue notifications on your phone](#overdue-notifications-on-your-phone)\n- [API Reference](#api-reference)\n- [Development](#development)\n- [Credits](#credits)\n- [Migration Information](#migration-information)\n- [License](#license)\n\n\u003c!-- END doctoc generated TOC please keep comment here to allow auto update --\u003e\n\n\u003cbr/\u003e\n\n\n## Features\n\n- **Quick Setup**: Simple containerised deployment, with images available on Docker Hub and GitHub.\n- **Unified Dashboard**: View backup status, history, and details for all servers in one place.\n- **Overdue Monitoring**: Automated checking and alerting for overdue scheduled backups.\n- **Data Visualisation \u0026 Logs**: Interactive charts and automatic log collection from Duplicati servers.\n- **Notifications \u0026 Alerts**: Integrated NTFY and SMTP email support for backup alerts, including overdue backup notifications.\n- **User Access Control \u0026 Security**: Secure authentication system with role-based access control (Admin/User roles), configurable password policies, account lockout protection, and comprehensive user management.\n- **Audit Logging**: Complete audit trail of all system changes and user actions with advanced filtering, export capabilities, and configurable retention periods.\n- **Application Logs Viewer**: Admin-only interface to view, search, and export application logs directly from the web interface with real-time monitoring capabilities.\n\n\n## Installation\n\nThe application can be deployed using Docker, Portainer Stacks, or Podman. \nSee details in the [Installation Guide](https://wsj-br.github.io/duplistatus/installation).\n\n\n- If you are upgrading from an earlier version, your database will be automatically \n[migrated](https://wsj-br.github.io/duplistatus/migration/version_upgrade) to the new schema during the upgrade process.\n\n- When using Podman (either as a standalone container or within a pod), and if you require custom DNS settings \n(such as for Tailscale MagicDNS, corporate networks, or other custom DNS configurations), you can manually \nspecify DNS servers and search domains. See the installation guide for further details.\n\n## Duplicati Servers Configuration (Required)\n\nOnce your **duplistatus** server is up and running, you need to configure your **Duplicati** servers to \nsend backup logs to **duplistatus**, as outlined in the [Duplicati Configuration](https://wsj-br.github.io/duplistatus/installation/duplicati-server-configuration) \nsection of the Installation Guide. Without this configuration, the dashboard will not receive backup data from your Duplicati servers.\n\n## User Guide\n\nSee the [User Guide](https://wsj-br.github.io/duplistatus/user-guide/overview) for detailed instructions on how to configure and use **duplistatus**, including initial setup, feature configuration, and troubleshooting.\n\n## Screenshots\n\n### Dashboard\n\n![dashboard](documentation/static/img/screen-main-dashboard-card-mode.png)\n\n### Backup History\n\n![server-detail](documentation/static/img/screen-server-backup-list.png)\n\n### Backup Details\n\n![backup-detail](documentation/static/img/screen-backup-detail.png)\n\n### Overdue Backups\n\n![overdue backups](documentation/static/img/screen-overdue-backup-hover-card.png)\n\n### Overdue notifications on your phone\n\n![ntfy overdue message](documentation/static/img/screen-overdue-notification.png)\n\n## API Reference\n\nSee the [API Endpoints Documentation](https://wsj-br.github.io/duplistatus/api-reference/overview) for details about available endpoints, request/response formats, and examples.\n\n## Development\n\nFor instructions on downloading, changing, or running the code, see [Development Setup](https://wsj-br.github.io/duplistatus/development/setup).\n\nThis project was mainly built with AI help. To learn how, see [How I Built this Application using AI tools](https://wsj-br.github.io/duplistatus/development/how-i-build-with-ai).\n\n## Credits\n\n- First and foremost, thanks to Kenneth Skovhede for creating Duplicati—this amazing backup tool. Thanks also to all the contributors.\n\n  💙 If you find [Duplicati](https://www.duplicati.com) useful, please consider supporting the developer. More details are available on their website or GitHub page.\n\n- Duplicati SVG icon from https://dashboardicons.com/icons/duplicati\n- Notify SVG icon from https://dashboardicons.com/icons/ntfy\n- GitHub SVG icon from https://github.com/logos\n\n\u003e[!NOTE]\n\u003e All product names, trademarks, and registered trademarks are the property of their respective owners. Icons and names are used for identification purposes only and do not imply endorsement.\n\n\n\u003cbr/\u003e\n\n## Migration Information\n\nIf you are upgrading from an earlier version, your database will be automatically migrated to the new schema during the upgrade process.\n\nFor detailed migration information, including migration steps, monitoring, and rollback procedures, please refer to the [Migration Documentation](https://wsj-br.github.io/duplistatus/migration/version_upgrade) in the Docusaurus documentation.\n\n\u003cbr/\u003e\n\n\n## License\n\nThe project is licensed under the [Apache License 2.0](https://wsj-br.github.io/duplistatus/LICENSE).   \n\n**Copyright © 2025 Waldemar Scudeller Jr.**\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwsj-br%2Fduplistatus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwsj-br%2Fduplistatus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwsj-br%2Fduplistatus/lists"}