{"adoption": {"forks": 140, "observed_at": "2026-08-28T04:04:29.511908+00:00", "stars": 1356}, "canonical_url": "https://ross.abutalabs.com/products/kotatogram-desktop", "card": {"archived": false, "artifact_type": "application", "description": "Experimental Telegram Desktop fork.", "domain": ["messaging-platforms", "desktop-applications", "cross-platform"], "enriched": true, "function": ["gui", "chat-interface"], "health_score": 74, "homepage": "https://kotatogram.github.io", "language": "C++", "license": "NOASSERTION", "license_family": "other", "maturity": "maintenance", "member_repos": ["kotatogram/kotatogram-desktop"], "name": "kotatogram/kotatogram-desktop", "platform": ["windows", "cross-platform"], "pushed_at": "2026-07-02T22:16:42+00:00", "repo": "kotatogram/kotatogram-desktop", "stars": 1356, "tags": ["telegram", "telegram-desktop", "fork", "messenger", "unofficial-client", "c-plus-plus", "qt", "linux", "macos", "desktop"], "topics": ["telegram", "desktop", "multi-platform", "unofficial", "fork", "telegram-desktop", "kotatogram-desktop"], "urls": [], "use_cases": ["use telegram on desktop with more customization options", "organize chats into local folders without limits", "forward messages to multiple chats without attribution", "change the default font in telegram desktop", "get wider chat bubbles on large screens", "run an unofficial telegram desktop client on linux via flatpak"], "what_it_is": "Kotatogram Desktop is an experimental fork of the official Telegram Desktop client written in C++, adding extra features such as local folders, unquoted forwarding, custom fonts, and wide message bubbles. It ships binaries for Windows, Linux, and macOS and is licensed under GPL v3 with an OpenSSL exception.", "when_to_avoid": ["you need the latest official telegram features and security updates immediately", "you require synced cloud folders rather than local-only ones", "you want a client with guaranteed long-term maintenance, since the fork is experimental and updates lag the official app"], "when_to_choose": ["you want telegram desktop features beyond the official client, like local folders and custom fonts", "you need unquoted forwarding or compact chat list tweaks", "you prefer a fork you can build and modify yourself under GPL v3"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/kotatogram-desktop", "repo": "kotatogram/kotatogram-desktop", "role": "main", "score": 63}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:29.511908+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:41:54.782901+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c13cc9e23f1cdcdf719eca1016bf378b627b3fbdc86224b90d82bc0bec515f34", "fetched_at": "2026-08-28T04:04:29.511908+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kotatogram/kotatogram-desktop"}, {"content_hash": "e77c273e4d5895be56847f5279cec7fff6900f8c1662d2596110b3bcb0cd3580", "fetched_at": "2026-08-29T12:00:08.350870+00:00", "kind": "homepage", "missing": false, "url": "https://kotatogram.github.io"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:29.511908+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:41:54.782901+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c13cc9e23f1cdcdf719eca1016bf378b627b3fbdc86224b90d82bc0bec515f34", "fetched_at": "2026-08-28T04:04:29.511908+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kotatogram/kotatogram-desktop"}, {"content_hash": "e77c273e4d5895be56847f5279cec7fff6900f8c1662d2596110b3bcb0cd3580", "fetched_at": "2026-08-29T12:00:08.350870+00:00", "kind": "homepage", "missing": false, "url": "https://kotatogram.github.io"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:41:54.782901+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c13cc9e23f1cdcdf719eca1016bf378b627b3fbdc86224b90d82bc0bec515f34", "fetched_at": "2026-08-28T04:04:29.511908+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kotatogram/kotatogram-desktop"}, {"content_hash": "e77c273e4d5895be56847f5279cec7fff6900f8c1662d2596110b3bcb0cd3580", "fetched_at": "2026-08-29T12:00:08.350870+00:00", "kind": "homepage", "missing": false, "url": "https://kotatogram.github.io"}], "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:04:29.511908+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:29.511908+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:29.511908+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:41:54.782901+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c13cc9e23f1cdcdf719eca1016bf378b627b3fbdc86224b90d82bc0bec515f34", "fetched_at": "2026-08-28T04:04:29.511908+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kotatogram/kotatogram-desktop"}, {"content_hash": "e77c273e4d5895be56847f5279cec7fff6900f8c1662d2596110b3bcb0cd3580", "fetched_at": "2026-08-29T12:00:08.350870+00:00", "kind": "homepage", "missing": false, "url": "https://kotatogram.github.io"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:29.511908+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:29.511908+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:41:54.782901+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c13cc9e23f1cdcdf719eca1016bf378b627b3fbdc86224b90d82bc0bec515f34", "fetched_at": "2026-08-28T04:04:29.511908+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kotatogram/kotatogram-desktop"}, {"content_hash": "e77c273e4d5895be56847f5279cec7fff6900f8c1662d2596110b3bcb0cd3580", "fetched_at": "2026-08-29T12:00:08.350870+00:00", "kind": "homepage", "missing": false, "url": "https://kotatogram.github.io"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:29.511908+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:29.511908+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:29.511908+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:41:54.782901+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c13cc9e23f1cdcdf719eca1016bf378b627b3fbdc86224b90d82bc0bec515f34", "fetched_at": "2026-08-28T04:04:29.511908+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kotatogram/kotatogram-desktop"}, {"content_hash": "e77c273e4d5895be56847f5279cec7fff6900f8c1662d2596110b3bcb0cd3580", "fetched_at": "2026-08-29T12:00:08.350870+00:00", "kind": "homepage", "missing": false, "url": "https://kotatogram.github.io"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:29.511908+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:29.511908+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:41:54.782901+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c13cc9e23f1cdcdf719eca1016bf378b627b3fbdc86224b90d82bc0bec515f34", "fetched_at": "2026-08-28T04:04:29.511908+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kotatogram/kotatogram-desktop"}, {"content_hash": "e77c273e4d5895be56847f5279cec7fff6900f8c1662d2596110b3bcb0cd3580", "fetched_at": "2026-08-29T12:00:08.350870+00:00", "kind": "homepage", "missing": false, "url": "https://kotatogram.github.io"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:41:54.782901+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c13cc9e23f1cdcdf719eca1016bf378b627b3fbdc86224b90d82bc0bec515f34", "fetched_at": "2026-08-28T04:04:29.511908+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kotatogram/kotatogram-desktop"}, {"content_hash": "e77c273e4d5895be56847f5279cec7fff6900f8c1662d2596110b3bcb0cd3580", "fetched_at": "2026-08-29T12:00:08.350870+00:00", "kind": "homepage", "missing": false, "url": "https://kotatogram.github.io"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:41:54.782901+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c13cc9e23f1cdcdf719eca1016bf378b627b3fbdc86224b90d82bc0bec515f34", "fetched_at": "2026-08-28T04:04:29.511908+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kotatogram/kotatogram-desktop"}, {"content_hash": "e77c273e4d5895be56847f5279cec7fff6900f8c1662d2596110b3bcb0cd3580", "fetched_at": "2026-08-29T12:00:08.350870+00:00", "kind": "homepage", "missing": false, "url": "https://kotatogram.github.io"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:41:54.782901+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c13cc9e23f1cdcdf719eca1016bf378b627b3fbdc86224b90d82bc0bec515f34", "fetched_at": "2026-08-28T04:04:29.511908+00:00", "kind": "readme", "missing": false, "url": "https://github.com/kotatogram/kotatogram-desktop"}, {"content_hash": "e77c273e4d5895be56847f5279cec7fff6900f8c1662d2596110b3bcb0cd3580", "fetched_at": "2026-08-29T12:00:08.350870+00:00", "kind": "homepage", "missing": false, "url": "https://kotatogram.github.io"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 90, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2517, "days_push": 62, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 63, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}