Telegram bot framework for .NET
Starts like a script.
Grows like a system.
TeleFlow keeps the first command simple and the grown bot explicit: typed handlers, dependency injection, generated metadata, state, callbacks, long polling, webhooks, and direct Telegram Bot API access.
builder.Services.AddTelegramBot(options =>
{
options.Token = token;
});
builder.Services.AddMemoryStateStorage();
builder.Services.AddTelegramHandlersFromAssembly(
typeof(Program).Assembly);
builder.Services.AddLongPolling();
public sealed class StartHandler
{
[Command("start")]
public Task Handle(
MessageContext ctx,
CancellationToken ct)
{
return ctx.Message.AnswerAsync(
"Hello from TeleFlow.",
ct);
}
}
Choose your path
One documentation site for different levels
First bot
Build a minimal long polling bot, add handlers, and understand the basic TeleFlow application model.
02Real workflow
Walk through a support desk bot with state, callbacks, DI services, and admin actions.
03Enterprise shape
Review architecture, deployment, versioning, diagnostics, performance, and production checklist notes.
Framework principles
Convenient does not have to mean hidden
TeleFlow uses normal C# handlers and normal .NET dependency injection. The recommended path generates handler metadata at build time and fails clearly when generated registration is missing.
Documentation map