{"id":13454358,"url":"https://github.com/mtcute/mtcute","last_synced_at":"2026-04-02T00:53:27.308Z","repository":{"id":37507309,"uuid":"355840294","full_name":"mtcute/mtcute","owner":"mtcute","description":"modern typescript library for mtproto. supports browsers, node/bun, deno and more!","archived":false,"fork":false,"pushed_at":"2026-03-01T22:45:51.000Z","size":13631,"stargazers_count":431,"open_issues_count":15,"forks_count":45,"subscribers_count":3,"default_branch":"master","last_synced_at":"2026-03-02T01:44:23.555Z","etag":null,"topics":["bun","deno","mtproto","nodejs","telegram","typescript"],"latest_commit_sha":null,"homepage":"https://mtcute.dev","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mtcute.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}},"created_at":"2021-04-08T09:20:09.000Z","updated_at":"2026-03-01T22:45:55.000Z","dependencies_parsed_at":"2023-01-24T17:00:47.130Z","dependency_job_id":"aeecc5a9-2bfa-40f7-a79b-6d0bf6efc1ed","html_url":"https://github.com/mtcute/mtcute","commit_stats":null,"previous_names":[],"tags_count":114,"template":false,"template_full_name":null,"purl":"pkg:github/mtcute/mtcute","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mtcute%2Fmtcute","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mtcute%2Fmtcute/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mtcute%2Fmtcute/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mtcute%2Fmtcute/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mtcute","download_url":"https://codeload.github.com/mtcute/mtcute/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mtcute%2Fmtcute/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30086518,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-04T15:40:14.053Z","status":"ssl_error","status_checked_at":"2026-03-04T15:40:13.655Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["bun","deno","mtproto","nodejs","telegram","typescript"],"created_at":"2024-07-31T08:00:53.380Z","updated_at":"2026-04-02T00:53:27.290Z","avatar_url":"https://github.com/mtcute.png","language":"TypeScript","funding_links":[],"categories":["TypeScript","typescript","Bots"],"sub_categories":["Bot Libs"],"readme":"\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://github.com/mtcute/mtcute/\"\u003e\n        \u003cimg src=\"https://raw.githubusercontent.com/mtcute/mtcute/master/.forgejo/logo.svg?new\" alt=\"mtcute logo\" title=\"mtcute\" width=\"480\" /\u003e\u003cbr/\u003e\n    \u003c/a\u003e\u003cbr/\u003e\n    \u003cb\u003emodern typescript library for mtproto\u003c/b\u003e\n    \u003cbr\u003e\n    \u003ca href=\"https://mtcute.dev\"\u003edocumentation\u003c/a\u003e\n    \u0026nbsp;•\u0026nbsp;\n    \u003ca href=\"https://ref.mtcute.dev\"\u003eapi reference\u003c/a\u003e\n    \u0026nbsp;•\u0026nbsp;\n    \u003ca href=\"https://t.me/mt_cute\"\u003etelegram chat\u003c/a\u003e\n    \u003cbr/\u003e\u003cbr/\u003e\n    \u003cimg src=\"https://git.stupid.fish/teidesu/mtcute/actions/workflows/test.yaml/badge.svg\" alt=\"Tests CI\" /\u003e\n    \u003cimg src=\"https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Fmtcute%2Fmtcute%2Fmaster%2Fpackages%2Fcore%2Fsrc%2Ftl%2Fapi-schema.json\u0026query=l\u0026label=tl%20layer\" alt=\"tl layer\" /\u003e\n    \u003ca href=\"https://www.npmjs.com/search?q=%40mtcute\"\u003e\n        \u003cimg src=\"https://img.shields.io/npm/v/@mtcute/core\" alt=\"npm\" /\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n```ts\nimport { TelegramClient } from '@mtcute/node'\nimport { Dispatcher, filters } from '@mtcute/dispatcher'\n\nconst tg = new TelegramClient({\n    apiId: Number.parseInt(process.env.API_ID),\n    apiHash: process.env.API_HASH,\n    storage: 'my-account'\n})\nconst dp = Dispatcher.for(tg)\n\ndp.onNewMessage(filters.chat('private'), async (msg) =\u003e {\n    await msg.replyText('hiiii from mtcute! 🌸')\n})\n\nconst self = await tg.start({ /* optional params */ })\nconsole.log(`✨ logged in as ${self.displayName}`)\n```\n\nmtcute is a modern, performant and *✨ cute ✨* [mtproto](https://mtcute.dev/guide/intro/mtproto-vs-bot-api.html) library and bot framework,\nsupporting both web and nodejs.\n\n## quick start\n\n🤖 just starting a (user)bot? use the scaffolding tool:\n\n```bash\npnpm create @mtcute/bot\n```\n\n🏭 want to integrate it into your existing nodejs app? use the nodejs package:\n```bash\npnpm add @mtcute/node\n```\n\n✨ building something for web? use the web package:\n```bash\npnpm add @mtcute/web\n```\n\n🚀 using the newfangled runtimes? we've got you covered:\n- bun: `bun add @mtcute/bun`\n- deno: `import { TelegramClient } from 'jsr:@mtcute/deno'`\n\nlearn more: [guide](https://mtcute.dev/guide/)\n\n## features\n\n- 🍰 **simple**: mtcute hides all the complexity and provides a clean and modern api\n- ✨ **compatible**: mtcute supports almost everything bot api does, and even more!\n- 🍡 **lightweight**: running instance uses less than 50 mb of ram\n- 🛡️ **type-safe**: most of the apis (including mtproto) are strictly typed to help your workflow\n- ⚙️ **hackable**: almost every aspect of the library is customizable, including networking and storage\n- 🕙 **up-to-date**: mtcute uses the latest TL schema to provide the newest features as soon as possible\n\n## cat in the readme 🐈\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"https://cataas.com/cat\" align=\"center\" width=\"480\" /\u003e\n\u003c/p\u003e\n\n## project goals\n\nmtcute strives to:\n- be customizable enough to fit most of the possible use-cases\n- be lightweight, both in terms of runtime and bundle size\n- support (theoretically) any environment without much hassle\n- provide a solid foundation for all kinds of applications on telegram platform\n- provide a convenient high-level api for the most commonly used features\n\nmtcute is **NOT** and will never be:\n- a library for spam/flood or otherwise malicious activities\n- a fully feature-complete library - highlevel apis will never cover the entirety of the apis. feel free to contribute, though!\n- a drop-in replacement for (insert library name)\n- a teapot\n\n## setting up for development\n\n```bash\ngit clone https://github.com/mtcute/mtcute\nfnm use # or `nvm use`\ncd mtcute\npnpm install --frozen-lockfile\n\n# generate code from tl schema\npnpm -C packages/core run gen-tl\n```\n\n## acknowledgements\n\nsome parts were based on or greatly inspired by these projects:\n\n- [TDLib](https://github.com/tdlib/td) - the official mtproto client library\n- [TDesktop](https://github.com/telegramdesktop/tdesktop) - the official desktop client\n- [Pyrogram](https://github.com/pyrogram/pyrogram), [Telethon](https://github.com/LonamiWebs/Telethon) - popular python libraries\n\nthanks [@dotvhs](//t.me/AboutTheDot) for the logo \u003c3\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmtcute%2Fmtcute","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmtcute%2Fmtcute","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmtcute%2Fmtcute/lists"}