Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Crystal
  3. tourmaline

tourmaline

MITCrystal0.29.0

A simple, easy-to-use, and fast Telegram Bot API library written in Crystal.

Visit WebsiteGitHubGitHub
167 stars36 forks0 contributors

What is tourmaline?

Tourmaline is a Telegram Bot API library written in Crystal, designed to simplify the development of Telegram bots. It provides a straightforward interface and comprehensive feature coverage, enabling developers to create bots efficiently. The library handles all major Telegram Bot API functionalities, from basic messaging to advanced features like payments and games.

Target Audience

Crystal developers looking to build Telegram bots with a clean, performant library. It's suitable for both beginners and experienced developers who need full API support and flexibility.

Value Proposition

Developers choose Tourmaline for its simplicity, speed, and complete feature set, offering an easy-to-use yet powerful alternative to other bot libraries. Its robust middleware system and planned framework integrations make it highly adaptable for various bot applications.

Overview

Simple Telegram bot library for Crystal

Use Cases

Best For

  • Building Telegram bots with the Crystal programming language
  • Creating bots that require full Telegram API coverage (e.g., payments, games, polls)
  • Developing bots with middleware for command and query handling
  • Implementing bots using long polling or webhook updates
  • Integrating Telegram bots with Crystal web frameworks (via planned adapters)
  • Writing performant and maintainable bot code with a clean API

Not Ideal For

  • Projects not using the Crystal programming language
  • Developers needing immediate, production-ready integrations with Crystal web frameworks like Kemal or Amber
  • Teams that prioritize a large ecosystem with abundant third-party plugins and community support

Pros & Cons

Pros

Comprehensive API Coverage

Supports all Telegram Bot API features including payments, games, and polls, as confirmed in the roadmap and key features list.

Flexible Middleware System

Includes a robust middleware system for handling commands, queries, and events, enabling modular and extensible bot logic without complex setups.

Dual Update Methods

Offers both long polling and webhooks for receiving updates, providing flexibility based on deployment preferences and server constraints.

Proxy Support

Built-in HTTP/HTTP proxy support simplifies network configurations, useful for bypassing restrictions or optimizing traffic in specific environments.

Cons

Incomplete Framework Adapters

Adapters for popular Crystal web frameworks like Kemal and Amber are only planned, not yet implemented, limiting immediate use in web-integrated projects.

Smaller Community and Ecosystem

Being a Crystal library, it has a limited user base and fewer third-party resources, which can slow down troubleshooting and extension development.

Potential Setup Complexity

Requires familiarity with Crystal and its toolchain, adding a learning curve for developers new to the language compared to more mainstream options.

Frequently Asked Questions

Quick Stats

Stars167
Forks36
Contributors0
Open Issues4
Last commit11 months ago
CreatedSince 2018

Tags

#stickers#open-source#crystal-lang#telegram-bot-api#telegram#crystal#telegraf#bot-api#telegram-bot#telegram-bots#api-library#webhooks#long-polling#middleware#webhook

Built With

C
Crystal

Links & Resources

Website

Included in

Crystal3.5k
Auto-fetched 1 day ago

Related Projects

graphql-crystalgraphql-crystal

a graphql implementation for crystal

Stars213
Forks15
Last commit6 years ago
graphqlgraphql

GraphQL server library for Crystal

Stars139
Forks14
Last commit13 days ago
multi-authmulti-auth

Standardized multi-provider OAuth authentication

Stars118
Forks27
Last commit10 months ago
shrine.crshrine.cr

File Attachment toolkit for Crystal applications. Heavily inspired by Shrine for Ruby.

Stars82
Forks17
Last commit28 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub