modern typescript library for mtproto. supports browsers, node/bun, deno and more!
github mirror: https://github.com/mtcute/mtcute
ec736f8590
i've been wanting to name a commit like this for my entire life, lol. seriously though, a lot has changed: - extracted TL-related stuff to `@mtcute/tl-utils` and `@mtcute/tl-runtime`, rewrote codegen in TS - updated to layer 134, moved to int64 identifiers - rewritten networking (mtproto), rewritten updates handling - *lots* of refactoring still a very early version though, there are a lot of improvements to be made, but at least it runs, lol also tl-reference will not be updated anytime soon because i want to rewrite it |
||
---|---|---|
docs | ||
packages | ||
scripts | ||
tl-reference | ||
.editorconfig | ||
.eslintignore | ||
.eslintrc.js | ||
.gitattributes | ||
.gitignore | ||
.prettierignore | ||
.prettierrc | ||
lerna.json | ||
LICENSE | ||
package.json | ||
README.md | ||
tsconfig.json | ||
yarn.lock |
MTCute
Work-in-progress library for MTProto in TypeScript.
🎯 Roadmap (notion.so) | 📦 TL Reference
⚠️ Warning: While this library is WIP, storage format will change without changing format version and without migration algorithm, and there will be breaking changes in the API.
If you encounter errors related to storage, either reset your storage by removing the file, or fix it manually.
What currently works:
- TCP Connection in NodeJS
- Sending & receiving text messages
- Uploading & downloading files
- HTML & Markdown parse modes
- Type-safe filter system
What is not done yet:
- pretty much everything else
Setting up for development:
git clone https://github.com/mtcute/mtcute
cd mtcute
yarn install
npx lerna link
# generate code from tl schema
cd packages/tl
yarn generate-code
Acknowledgements
Some parts were based on code from these projects: