{"adoption": {"forks": 1646, "observed_at": "2026-08-28T04:10:28.912223+00:00", "stars": 9203}, "canonical_url": "https://ross.abutalabs.com/products/node-telegram-bot-api", "card": {"archived": false, "artifact_type": "library", "description": "Telegram Bot API for NodeJS", "domain": ["chatbots", "messaging-platforms", "apis", "developer-tools"], "enriched": true, "function": ["chatbot", "http-client", "middleware", "sdk"], "health_score": 100, "homepage": null, "language": "TypeScript", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["yagop/node-telegram-bot-api"], "name": "yagop/node-telegram-bot-api", "platform": ["bun", "cross-platform"], "pushed_at": "2026-08-24T20:48:28+00:00", "repo": "yagop/node-telegram-bot-api", "stars": 9203, "tags": ["telegram-bot-api", "telegram", "bot-framework", "runtime-agnostic", "edge-ready", "typescript", "nodejs", "deno"], "topics": ["telegram", "bot", "bot-framework", "chatbot", "api", "nodejs"], "urls": [], "use_cases": ["build a telegram bot in nodejs", "handle telegram inline keyboard callbacks", "send telegram messages from a cloudflare worker", "add middleware to telegram bot update handling", "create a telegram echo bot", "call telegram bot api methods from typescript"], "what_it_is": "A runtime-agnostic TypeScript client library for the Telegram Bot API, supporting Node.js, Bun, Deno, Cloudflare Workers, and Vercel Functions. Version 2 is a from-scratch redesign with koa-style middleware, typed API methods, and fluent keyboard builders.", "when_to_avoid": ["you rely on the v1 API, since v2 is not backward compatible", "you need a framework for platforms other than Telegram", "you want a batteries-included bot hosting service rather than a library"], "when_to_choose": ["you want a modern, typed Telegram Bot API client for Node.js or edge runtimes", "you prefer middleware-based bot frameworks with command and regex filters", "you need to deploy a Telegram bot to serverless or edge environments"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/node-telegram-bot-api", "repo": "yagop/node-telegram-bot-api", "role": "main", "score": 99}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.912223+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:23:17.879345+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "98a474db1124fc4924757adf7c9171a416adf92e023bdc62c762bfc72a41e737", "fetched_at": "2026-08-28T04:10:28.912223+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yagop/node-telegram-bot-api"}, {"content_hash": "ff362ef2ff03ad5e69581d476da075d7aa700e6c4b93aabb81975c8b5f9c0920", "fetched_at": "2026-08-29T08:23:30.402489+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/node-telegram-bot-api"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.912223+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:23:17.879345+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "98a474db1124fc4924757adf7c9171a416adf92e023bdc62c762bfc72a41e737", "fetched_at": "2026-08-28T04:10:28.912223+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yagop/node-telegram-bot-api"}, {"content_hash": "ff362ef2ff03ad5e69581d476da075d7aa700e6c4b93aabb81975c8b5f9c0920", "fetched_at": "2026-08-29T08:23:30.402489+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/node-telegram-bot-api"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:23:17.879345+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "98a474db1124fc4924757adf7c9171a416adf92e023bdc62c762bfc72a41e737", "fetched_at": "2026-08-28T04:10:28.912223+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yagop/node-telegram-bot-api"}, {"content_hash": "ff362ef2ff03ad5e69581d476da075d7aa700e6c4b93aabb81975c8b5f9c0920", "fetched_at": "2026-08-29T08:23:30.402489+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/node-telegram-bot-api"}], "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:10:28.912223+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.912223+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.912223+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:23:17.879345+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "98a474db1124fc4924757adf7c9171a416adf92e023bdc62c762bfc72a41e737", "fetched_at": "2026-08-28T04:10:28.912223+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yagop/node-telegram-bot-api"}, {"content_hash": "ff362ef2ff03ad5e69581d476da075d7aa700e6c4b93aabb81975c8b5f9c0920", "fetched_at": "2026-08-29T08:23:30.402489+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/node-telegram-bot-api"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.912223+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.912223+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:23:17.879345+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "98a474db1124fc4924757adf7c9171a416adf92e023bdc62c762bfc72a41e737", "fetched_at": "2026-08-28T04:10:28.912223+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yagop/node-telegram-bot-api"}, {"content_hash": "ff362ef2ff03ad5e69581d476da075d7aa700e6c4b93aabb81975c8b5f9c0920", "fetched_at": "2026-08-29T08:23:30.402489+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/node-telegram-bot-api"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.912223+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.912223+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.912223+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:23:17.879345+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "98a474db1124fc4924757adf7c9171a416adf92e023bdc62c762bfc72a41e737", "fetched_at": "2026-08-28T04:10:28.912223+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yagop/node-telegram-bot-api"}, {"content_hash": "ff362ef2ff03ad5e69581d476da075d7aa700e6c4b93aabb81975c8b5f9c0920", "fetched_at": "2026-08-29T08:23:30.402489+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/node-telegram-bot-api"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.912223+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.912223+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:23:17.879345+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "98a474db1124fc4924757adf7c9171a416adf92e023bdc62c762bfc72a41e737", "fetched_at": "2026-08-28T04:10:28.912223+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yagop/node-telegram-bot-api"}, {"content_hash": "ff362ef2ff03ad5e69581d476da075d7aa700e6c4b93aabb81975c8b5f9c0920", "fetched_at": "2026-08-29T08:23:30.402489+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/node-telegram-bot-api"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:23:17.879345+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "98a474db1124fc4924757adf7c9171a416adf92e023bdc62c762bfc72a41e737", "fetched_at": "2026-08-28T04:10:28.912223+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yagop/node-telegram-bot-api"}, {"content_hash": "ff362ef2ff03ad5e69581d476da075d7aa700e6c4b93aabb81975c8b5f9c0920", "fetched_at": "2026-08-29T08:23:30.402489+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/node-telegram-bot-api"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:23:17.879345+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "98a474db1124fc4924757adf7c9171a416adf92e023bdc62c762bfc72a41e737", "fetched_at": "2026-08-28T04:10:28.912223+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yagop/node-telegram-bot-api"}, {"content_hash": "ff362ef2ff03ad5e69581d476da075d7aa700e6c4b93aabb81975c8b5f9c0920", "fetched_at": "2026-08-29T08:23:30.402489+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/node-telegram-bot-api"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:23:17.879345+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "98a474db1124fc4924757adf7c9171a416adf92e023bdc62c762bfc72a41e737", "fetched_at": "2026-08-28T04:10:28.912223+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yagop/node-telegram-bot-api"}, {"content_hash": "ff362ef2ff03ad5e69581d476da075d7aa700e6c4b93aabb81975c8b5f9c0920", "fetched_at": "2026-08-29T08:23:30.402489+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/node-telegram-bot-api"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 99}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4084, "days_push": 9, "days_rel": 9, "gap_med": 8, "n_releases_24m": 8}, "score": 99, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}