Skip to content

lentrodev/Spire

Repository files navigation

Telegram Bot Builder framework.

Table of contents

Overview

Spire - fast, easy-in-use, module-based Telegram Bot framework for .Net applications. It uses reflection for registering and invoking update handlers and commands.

Framework structure

Show framework structure

Available packages

Show framework packages descriptions

Spire

Library which contains all needed classes for building Telegram bot. Minimal implementation of Spire.Core and Spire.Core.Abstractions

Spire.Core

Core library, contains base classes for building Telegram bot.

Spire.Core.Abstractions

Abstractions for Spire.Core package.

Spire.Core.Commands

Enables support for creating and handling commands.

Spire.Core.Commands.Abstractions

Abstractions for Spire.Core.Commands package.

Spire.Core.Commands.Parsing

Enables support for customizable command arguments parsing.

Spire.Core.Commands.Parsing.Abstractions

Abstractions for Spire.Core.Commands package.

Spire.Core.Markups

Adds markup builders (InlineKeyboardMarkupBuilder and ReplyKeyboardMarkupBuilder).

Spire.Core.Markups.Abstractions

Abstractions for Spire.Core.Markups package.

Spire.Core.Sessions

Enables user sessions support.

Spire.Core.Sessions.Abstractions

Abstractions for Spire.Core.Sessions package.

Spire.Hosting.Console

Contains base classes for bot deployment as a console application.

Spire.Hosting

Contains base classes for bot deployment in any workspace.

Getting Started

Check project's examples folder to see how it works. It shows basic framework functionality:

  • Creating typed update handlers (E.g Message handlers, CallbackQuery handlers).
  • Creating and handling typed commands with argument parsing.
  • Interactivity with users (replacement for state-machine mechanism). E.g filling some form, etc.

Documentation is still in progress...