Skip to content

ChessCast is the most powerful bot that will bring a different approach to the love of chess for all chess lovers.

License

Notifications You must be signed in to change notification settings

TheHormat/ChessCast

Repository files navigation

♟️ ChessCast Bot – Your Ultimate Chess Companion! 🎯

👋 Welcome to ChessCast!

ChessCast is a powerful and feature-rich Telegram bot designed for chess lovers. Whether you're a beginner or a grandmaster, ChessCast provides daily chess facts, puzzles, live tournaments, player stats, and beautiful chess images. All in one bot!

🚀 Why Use ChessCast?

Daily Chess Facts – Get unique and insightful chess facts twice a day!

Live Tournaments – Stay updated on Lichess & Chess.com tournaments.

Player Ratings & Stats – Instantly check player ratings and profiles.

Daily Chess Puzzles – Challenge yourself with new puzzles every day.

Puzzle Streak System – Track your daily puzzle solving streak and compete!

Rating Progress Tracker – Monitor your rating changes over time.

Achievement System – Unlock achievements as you improve!

Beautiful Chess Images – Get amazing chess-themed wallpapers.

Multi-Language Support – Available in English, Azerbaijani, Russian, and Turkish.


📌 How to Use?

Getting started is simple! Just click below and send /start to activate the bot.

📌 Start Chatting with ChessCast Bot

🔹 Main Commands:

Getting Started:

  • /start – Activate the bot and receive your first chess fact
  • /menu – Open interactive menu with all features
  • /about – Learn about the bot and its features

Puzzles & Progress:

  • /puzzle – Get a new daily chess puzzle
  • /streak – View your puzzle solving streak
  • /progress – Check your rating progress over time
  • /achievements – View your earned achievements

Profiles & Ratings:

  • /lichessprofile <username> – Check a Lichess player profile
  • /chessprofile <username> – Check a Chess.com player profile
  • /setrating <username> – Automatically fetch and save your rating
  • /topplayers – View the top-rated players using the bot

Tournaments:

  • /lichessarena <rating> – View live Lichess tournaments

Settings:

  • /language – Change the bot language
  • /donate – Support the development
  • /unsubscribe – Stop receiving daily notifications

🎨 Preview of ChessCast in Action!

📸 Daily Chess Fact: Chess Fact Example

🧩 Daily Chess Images: Chess Images Example

📊 Lichess & Chess.com Profile Check: Profile Example


💡 Why ChessCast?

ChessCast isn't just another chess bot – it's your daily chess trainer, mentor, and companion. Whether you're looking to improve your game, explore chess history, or challenge yourself, ChessCast delivers everything you need in an interactive and engaging way.


📢 Join the Chess Community!

📢 Stay updated and chat with other chess lovers in our official Telegram channel: 📌 Join ChessCast Channel

💬 Have suggestions or feedback? Message me on Telegram: ✉️ Contact @thehormat


Support ChessCast Development

If you enjoy using ChessCast, consider supporting the project with a coffee! Your support helps keep the bot running and improves its features.

Buy me a coffee


🔧 Technical Details

ChessCast Bot is built using:

  • Python 3.11+ & python-telegram-bot – Telegram API handling
  • PostgreSQL & asyncpg – Async database operations
  • OpenAI GPT-3.5 – AI-generated chess facts
  • Unsplash API – Chess images
  • Lichess.org & Chess.com APIs – Chess data integration

📁 Project Structure

ChessCast/
├── main.py                 # Entry point
├── config.py               # Configuration & logging
├── api/                    # External API integrations
│   ├── chess_com_api.py
│   ├── gpt_api.py
│   ├── lichess_api.py
│   └── unsplash_api.py
├── handlers/               # Telegram bot handlers
│   ├── commands.py         # Command handlers
│   ├── callbacks.py        # Callback query handlers
│   └── scheduled.py        # Scheduled daily tasks
├── services/               # Business logic
│   └── achievements.py
├── repositories/           # Database operations
│   ├── user_repo.py
│   ├── streak_repo.py
│   ├── rating_repo.py
│   └── achievement_repo.py
├── keyboards/              # Telegram inline keyboards
│   └── menus.py
├── locales/                # Translations (az, en, ru, tr)
│   ├── messages.py
│   └── prompts.py
└── core/                   # Core utilities
    ├── database.py
    └── scheduler.py

🚀 Running Locally

# Clone the repository
git clone https://github.com/yourusername/ChessCast.git
cd ChessCast

# Create virtual environment
python -m venv .venv
source .venv/bin/activate

# Install dependencies
pip install -r requirements.txt

# Set up environment variables
cp .env.example .env
# Edit .env with your credentials

# Run the bot
python main.py

📌 Want to Contribute?

If you're a developer and want to contribute, feel free to fork the repo and submit a PR!

About

ChessCast is the most powerful bot that will bring a different approach to the love of chess for all chess lovers.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages