Ultra Telegram Framework (UTF) is a modern, lightweight, and strongly typed Telegram Bot API framework built for TypeScript.
Designed with flexibility in mind, UTF features a unique adapter-based architecture that allows your bot to run seamlessly across various environments — from classic Node.js servers to Serverless Edge functions and Google Apps Script — without rewriting your core logic.
ctx.replyWithDraft()) with auto-debouncing for LLM integrations.utf-build CLI tool. No manual webhook boilerplate needed.npm install ultra-telegram-framework
Here is a basic example using the Node.js adapter with long polling. The syntax is designed to be instantly familiar if you have used other popular frameworks.
import { TelegramBot, NodeApiClient } from 'ultra-telegram-framework';
const token = process.env.BOT_TOKEN;
if (!token) throw new Error('BOT_TOKEN is missing!');
// 1. Initialize with the Node adapter
const bot = new TelegramBot(new NodeApiClient(token));
// 2. Setup handlers
bot.command('start', async (ctx) => {
await ctx.reply('Hello! I am an Ultra Telegram Framework bot 🚀');
});
bot.on('text', async (ctx) => {
// 100% type-safe: ctx.text is guaranteed to exist here
await ctx.reply(`You said: ${ctx.text}`);
});
// 3. Launch
bot.launch().then(() => console.log('🚀 Bot is running...'));
Write your bot logic once and deploy to GAS without any boilerplate.
import { TelegramBot, GasApiClient } from 'ultra-telegram-framework';
// GasApiClient automatically finds your BOT_TOKEN in Script Properties!
const bot = new TelegramBot(new GasApiClient());
bot.command('start', (ctx) => ctx.reply('Hello from GAS! ☁️'));
Build and deploy with one command:
npx utf-build src/index.ts
clasp push
👉 Read the Full Documentation in our Wiki
To keep this README clean, all detailed guides, tutorials, and advanced concepts are documented in our GitHub Wiki. There you will find:
This project is licensed under the MIT License — see the LICENSE file for details.
If this framework helped you save time, bypass GAS limitations, or build something awesome, consider supporting its development!