{"adoption": {"forks": 133, "observed_at": "2026-08-28T04:06:10.598933+00:00", "stars": 2074}, "canonical_url": "https://ross.abutalabs.com/products/gmail-cleaner", "card": {"archived": false, "artifact_type": "application", "description": "web based GUI to cleanup gmail delete, mark as read, unsubsribe from uncessary things u dont like", "domain": ["email", "developer-tools", "privacy", "self-hosted"], "enriched": true, "function": ["email", "gui", "developer-tools"], "health_score": 95, "homepage": "https://gururagavendra.github.io/gmail-cleaner/", "language": "Python", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["Gururagavendra/gmail-cleaner"], "name": "Gururagavendra/gmail-cleaner", "platform": ["windows", "self-hosted", "python"], "pushed_at": "2026-08-18T06:21:13+00:00", "repo": "Gururagavendra/gmail-cleaner", "stars": 2074, "tags": ["gmail", "bulk-unsubscribe", "inbox-cleanup", "oauth", "gmail-api", "privacy-first", "email-management", "linux", "macos", "docker", "web-server"], "topics": ["gmail", "opensource", "self-hosted", "cleaning-data", "cleanup-script", "cleanup-tool"], "urls": [], "use_cases": ["bulk unsubscribe from newsletters in gmail", "delete all emails from a specific sender", "mark thousands of unread emails as read", "clean up promotional clutter in my inbox", "archive emails from selected senders in bulk", "manage gmail labels for specific senders", "export email metadata to csv", "achieve inbox zero quickly"], "what_it_is": "A free, open-source, self-hosted web application for bulk cleaning of Gmail inboxes. It runs locally via Docker or Python and uses the Gmail API to unsubscribe from newsletters, delete emails by sender, and mark emails as read without any data leaving the user's machine.", "when_to_avoid": ["you use a non-Gmail provider like Outlook or a generic IMAP server", "you are not comfortable creating your own Google OAuth credentials", "you need fully automated, scheduled background cleanup rather than interactive one-off operations", "you need enterprise-grade support or SLAs"], "when_to_choose": ["you want a free, privacy-focused tool that runs entirely locally with no external servers", "you need bulk operations like unsubscribe, delete-by-sender, or mark-as-read across thousands of gmail messages", "you prefer a self-hosted, open-source alternative to paid inbox-cleaning services", "you want a simple web UI with smart filters by date, size, and category"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/gmail-cleaner", "repo": "Gururagavendra/gmail-cleaner", "role": "main", "score": 70}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.598933+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:56:20.274707+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "851aac3c232e2902cc4e9a407b88dd00e8349e3089f85177ac5a5c9e6d0734ee", "fetched_at": "2026-08-28T04:06:10.598933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Gururagavendra/gmail-cleaner"}, {"content_hash": "7f273b4552e855549bdb2cfa0b4ebc71fa81166c9bc218d7e80656bd9d89e688", "fetched_at": "2026-08-29T10:36:33.761694+00:00", "kind": "homepage", "missing": false, "url": "https://gururagavendra.github.io/gmail-cleaner/"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.598933+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:56:20.274707+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "851aac3c232e2902cc4e9a407b88dd00e8349e3089f85177ac5a5c9e6d0734ee", "fetched_at": "2026-08-28T04:06:10.598933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Gururagavendra/gmail-cleaner"}, {"content_hash": "7f273b4552e855549bdb2cfa0b4ebc71fa81166c9bc218d7e80656bd9d89e688", "fetched_at": "2026-08-29T10:36:33.761694+00:00", "kind": "homepage", "missing": false, "url": "https://gururagavendra.github.io/gmail-cleaner/"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:56:20.274707+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "851aac3c232e2902cc4e9a407b88dd00e8349e3089f85177ac5a5c9e6d0734ee", "fetched_at": "2026-08-28T04:06:10.598933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Gururagavendra/gmail-cleaner"}, {"content_hash": "7f273b4552e855549bdb2cfa0b4ebc71fa81166c9bc218d7e80656bd9d89e688", "fetched_at": "2026-08-29T10:36:33.761694+00:00", "kind": "homepage", "missing": false, "url": "https://gururagavendra.github.io/gmail-cleaner/"}], "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:10.598933+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.598933+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.598933+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:56:20.274707+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "851aac3c232e2902cc4e9a407b88dd00e8349e3089f85177ac5a5c9e6d0734ee", "fetched_at": "2026-08-28T04:06:10.598933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Gururagavendra/gmail-cleaner"}, {"content_hash": "7f273b4552e855549bdb2cfa0b4ebc71fa81166c9bc218d7e80656bd9d89e688", "fetched_at": "2026-08-29T10:36:33.761694+00:00", "kind": "homepage", "missing": false, "url": "https://gururagavendra.github.io/gmail-cleaner/"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.598933+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.598933+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:56:20.274707+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "851aac3c232e2902cc4e9a407b88dd00e8349e3089f85177ac5a5c9e6d0734ee", "fetched_at": "2026-08-28T04:06:10.598933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Gururagavendra/gmail-cleaner"}, {"content_hash": "7f273b4552e855549bdb2cfa0b4ebc71fa81166c9bc218d7e80656bd9d89e688", "fetched_at": "2026-08-29T10:36:33.761694+00:00", "kind": "homepage", "missing": false, "url": "https://gururagavendra.github.io/gmail-cleaner/"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.598933+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.598933+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.598933+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:56:20.274707+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "851aac3c232e2902cc4e9a407b88dd00e8349e3089f85177ac5a5c9e6d0734ee", "fetched_at": "2026-08-28T04:06:10.598933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Gururagavendra/gmail-cleaner"}, {"content_hash": "7f273b4552e855549bdb2cfa0b4ebc71fa81166c9bc218d7e80656bd9d89e688", "fetched_at": "2026-08-29T10:36:33.761694+00:00", "kind": "homepage", "missing": false, "url": "https://gururagavendra.github.io/gmail-cleaner/"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.598933+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:10.598933+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:56:20.274707+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "851aac3c232e2902cc4e9a407b88dd00e8349e3089f85177ac5a5c9e6d0734ee", "fetched_at": "2026-08-28T04:06:10.598933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Gururagavendra/gmail-cleaner"}, {"content_hash": "7f273b4552e855549bdb2cfa0b4ebc71fa81166c9bc218d7e80656bd9d89e688", "fetched_at": "2026-08-29T10:36:33.761694+00:00", "kind": "homepage", "missing": false, "url": "https://gururagavendra.github.io/gmail-cleaner/"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:56:20.274707+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "851aac3c232e2902cc4e9a407b88dd00e8349e3089f85177ac5a5c9e6d0734ee", "fetched_at": "2026-08-28T04:06:10.598933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Gururagavendra/gmail-cleaner"}, {"content_hash": "7f273b4552e855549bdb2cfa0b4ebc71fa81166c9bc218d7e80656bd9d89e688", "fetched_at": "2026-08-29T10:36:33.761694+00:00", "kind": "homepage", "missing": false, "url": "https://gururagavendra.github.io/gmail-cleaner/"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:56:20.274707+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "851aac3c232e2902cc4e9a407b88dd00e8349e3089f85177ac5a5c9e6d0734ee", "fetched_at": "2026-08-28T04:06:10.598933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Gururagavendra/gmail-cleaner"}, {"content_hash": "7f273b4552e855549bdb2cfa0b4ebc71fa81166c9bc218d7e80656bd9d89e688", "fetched_at": "2026-08-29T10:36:33.761694+00:00", "kind": "homepage", "missing": false, "url": "https://gururagavendra.github.io/gmail-cleaner/"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:56:20.274707+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "851aac3c232e2902cc4e9a407b88dd00e8349e3089f85177ac5a5c9e6d0734ee", "fetched_at": "2026-08-28T04:06:10.598933+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Gururagavendra/gmail-cleaner"}, {"content_hash": "7f273b4552e855549bdb2cfa0b4ebc71fa81166c9bc218d7e80656bd9d89e688", "fetched_at": "2026-08-29T10:36:33.761694+00:00", "kind": "homepage", "missing": false, "url": "https://gururagavendra.github.io/gmail-cleaner/"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 98, "longevity": 19, "rhythm": 62}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 277, "days_push": 15, "days_rel": 253, "gap_med": 0, "n_releases_24m": 10}, "score": 70, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}