{"adoption": {"forks": 214, "observed_at": "2026-08-28T04:06:05.565402+00:00", "stars": 2019}, "canonical_url": "https://ross.abutalabs.com/products/databasement", "card": {"archived": false, "artifact_type": "application", "description": "Self-hosted database backup manager with a web UI. Schedule, backup, and restore MySQL, PostgreSQL, MariaDB, Microsoft SQL Server, MongoDB, SQLite & Redis to S3, SFTP, Samba or local storage. SSH Tunnel support.", "domain": ["databases", "self-hosted"], "enriched": true, "function": ["backup", "scheduling", "self-hosted", "monitoring", "alerting", "webhook", "mcp"], "health_score": 99, "homepage": "https://david-crty.github.io/databasement/", "language": "PHP", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["David-Crty/databasement"], "name": "David-Crty/databasement", "platform": ["self-hosted"], "pushed_at": "2026-08-15T14:40:15+00:00", "repo": "David-Crty/databasement", "stars": 2019, "tags": ["database-backup", "s3", "sftp", "ssh-tunnel", "restore", "retention-policies", "php", "web-ui", "remote-agents", "devops", "backup", "docker", "web-server", "linux"], "topics": ["backup", "database", "s3", "mariadb", "mysql", "sqlite", "backup-restore", "database-backup", "database-management", "postgres", "postgressql", "self-hosted", "webui", "ssh", "ssh-tunnel", "sql", "microsoft-sql-server", "mssql", "firebird", "samba"], "urls": [], "use_cases": ["schedule automated nightly backups of my postgres databases to s3", "back up mysql and mongodb servers from one web interface", "restore a production database snapshot to a staging server", "back up databases behind a firewall via ssh tunnel", "refresh a staging database nightly from the latest production backup", "get notified on slack when a database backup fails", "encrypt database backups with aes-256 before uploading"], "what_it_is": "Databasement is a self-hosted web application for managing scheduled database backups and restores across MySQL, PostgreSQL, MariaDB, SQL Server, MongoDB, SQLite, Firebird, and Redis/Valkey. It supports S3, Azure Blob, Samba, SFTP/FTP, and local storage, with SSH tunneling, remote agents, retention policies, and failure notifications.", "when_to_avoid": ["you only need simple file or filesystem backups rather than database dumps", "you prefer a managed cloud backup service with no self-hosting", "you need application-level or non-database data backups", "you want a lightweight cron script rather than a full web application"], "when_to_choose": ["you need a single self-hosted UI to schedule and monitor backups across many database engines", "you want flexible storage targets like S3, SFTP, SMB, or Azure Blob with retention policies", "you need cross-server restores or scheduled staging refreshes", "you want SSH tunnel or outbound-agent access to databases in private networks"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/databasement", "repo": "David-Crty/databasement", "role": "main", "score": 77}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:05.565402+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:00:25.312047+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc671fbb16a830461bc5dcb22be6bdaaa547f83f4152b4bd781f61168610677", "fetched_at": "2026-08-28T04:06:05.565402+00:00", "kind": "readme", "missing": false, "url": "https://github.com/David-Crty/databasement"}, {"content_hash": "2b573367121bad73a397b0ac102095aa84b35f24f3490ec6e5a96517881a011b", "fetched_at": "2026-08-29T10:40:13.473937+00:00", "kind": "homepage", "missing": false, "url": "https://david-crty.github.io/databasement/"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:05.565402+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:00:25.312047+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc671fbb16a830461bc5dcb22be6bdaaa547f83f4152b4bd781f61168610677", "fetched_at": "2026-08-28T04:06:05.565402+00:00", "kind": "readme", "missing": false, "url": "https://github.com/David-Crty/databasement"}, {"content_hash": "2b573367121bad73a397b0ac102095aa84b35f24f3490ec6e5a96517881a011b", "fetched_at": "2026-08-29T10:40:13.473937+00:00", "kind": "homepage", "missing": false, "url": "https://david-crty.github.io/databasement/"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:00:25.312047+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc671fbb16a830461bc5dcb22be6bdaaa547f83f4152b4bd781f61168610677", "fetched_at": "2026-08-28T04:06:05.565402+00:00", "kind": "readme", "missing": false, "url": "https://github.com/David-Crty/databasement"}, {"content_hash": "2b573367121bad73a397b0ac102095aa84b35f24f3490ec6e5a96517881a011b", "fetched_at": "2026-08-29T10:40:13.473937+00:00", "kind": "homepage", "missing": false, "url": "https://david-crty.github.io/databasement/"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:06:05.565402+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:05.565402+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:05.565402+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:00:25.312047+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc671fbb16a830461bc5dcb22be6bdaaa547f83f4152b4bd781f61168610677", "fetched_at": "2026-08-28T04:06:05.565402+00:00", "kind": "readme", "missing": false, "url": "https://github.com/David-Crty/databasement"}, {"content_hash": "2b573367121bad73a397b0ac102095aa84b35f24f3490ec6e5a96517881a011b", "fetched_at": "2026-08-29T10:40:13.473937+00:00", "kind": "homepage", "missing": false, "url": "https://david-crty.github.io/databasement/"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:05.565402+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:05.565402+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:00:25.312047+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc671fbb16a830461bc5dcb22be6bdaaa547f83f4152b4bd781f61168610677", "fetched_at": "2026-08-28T04:06:05.565402+00:00", "kind": "readme", "missing": false, "url": "https://github.com/David-Crty/databasement"}, {"content_hash": "2b573367121bad73a397b0ac102095aa84b35f24f3490ec6e5a96517881a011b", "fetched_at": "2026-08-29T10:40:13.473937+00:00", "kind": "homepage", "missing": false, "url": "https://david-crty.github.io/databasement/"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:05.565402+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:05.565402+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:05.565402+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:00:25.312047+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc671fbb16a830461bc5dcb22be6bdaaa547f83f4152b4bd781f61168610677", "fetched_at": "2026-08-28T04:06:05.565402+00:00", "kind": "readme", "missing": false, "url": "https://github.com/David-Crty/databasement"}, {"content_hash": "2b573367121bad73a397b0ac102095aa84b35f24f3490ec6e5a96517881a011b", "fetched_at": "2026-08-29T10:40:13.473937+00:00", "kind": "homepage", "missing": false, "url": "https://david-crty.github.io/databasement/"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:05.565402+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:05.565402+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:00:25.312047+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc671fbb16a830461bc5dcb22be6bdaaa547f83f4152b4bd781f61168610677", "fetched_at": "2026-08-28T04:06:05.565402+00:00", "kind": "readme", "missing": false, "url": "https://github.com/David-Crty/databasement"}, {"content_hash": "2b573367121bad73a397b0ac102095aa84b35f24f3490ec6e5a96517881a011b", "fetched_at": "2026-08-29T10:40:13.473937+00:00", "kind": "homepage", "missing": false, "url": "https://david-crty.github.io/databasement/"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:00:25.312047+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc671fbb16a830461bc5dcb22be6bdaaa547f83f4152b4bd781f61168610677", "fetched_at": "2026-08-28T04:06:05.565402+00:00", "kind": "readme", "missing": false, "url": "https://github.com/David-Crty/databasement"}, {"content_hash": "2b573367121bad73a397b0ac102095aa84b35f24f3490ec6e5a96517881a011b", "fetched_at": "2026-08-29T10:40:13.473937+00:00", "kind": "homepage", "missing": false, "url": "https://david-crty.github.io/databasement/"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:00:25.312047+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc671fbb16a830461bc5dcb22be6bdaaa547f83f4152b4bd781f61168610677", "fetched_at": "2026-08-28T04:06:05.565402+00:00", "kind": "readme", "missing": false, "url": "https://github.com/David-Crty/databasement"}, {"content_hash": "2b573367121bad73a397b0ac102095aa84b35f24f3490ec6e5a96517881a011b", "fetched_at": "2026-08-29T10:40:13.473937+00:00", "kind": "homepage", "missing": false, "url": "https://david-crty.github.io/databasement/"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:00:25.312047+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1dc671fbb16a830461bc5dcb22be6bdaaa547f83f4152b4bd781f61168610677", "fetched_at": "2026-08-28T04:06:05.565402+00:00", "kind": "readme", "missing": false, "url": "https://github.com/David-Crty/databasement"}, {"content_hash": "2b573367121bad73a397b0ac102095aa84b35f24f3490ec6e5a96517881a011b", "fetched_at": "2026-08-29T10:40:13.473937+00:00", "kind": "homepage", "missing": false, "url": "https://david-crty.github.io/databasement/"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 97, "longevity": 20, "rhythm": 84}, "computed_at": "2026-09-03T02:39:23.370411+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 292, "days_push": 18, "days_rel": 28, "gap_med": 1, "n_releases_24m": 84}, "score": 77, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}