ocriado91 / python-telegrambot-flashcards

MIT License
0 stars 0 forks source link
api bot cicd github-actions python telegram-bot

Python Telegram Bot Flashcards

Unit Test Deployment Current Status codecov License: MIT

This repository contains a Python Telegram Bot that allows users to create and study flashcards within a Telegram chat interface. The bot utilizes the Telegram Bot API and provides a simple and interactive way for users to enhance their learning experience.

Features

Commands

Requirements

To run the Python Telegram Bot Flashcards, you'll need the following:

Installation

a) From source

  1. Clone the repository:
git clone https://github.com/ocriado91/python-telegrambot-flashcards.git
  1. Configure the virtual environment:
python3 -m venv .venv
source .venv/bin/activate
pip3 install -r requirements.txt
  1. Configure your Telegram Bot API key

Please, use the official Telegram Bot tutorial for setup your own bot, and modify the config/template.toml file with the related information

  1. Start the bot:
    python3 src/flashcard.py config/<YOUR_CONFIG_FILE>.toml

b) Using Docker

NOTE: It is required to fill the configuration template with your own Telegram Bot API Key. Futher instructions. In the following example, a config.toml file has been properly modified before to build docker image.

docker build -t flashcardbot .
docker run --name telegrambot -d flashcardbot python3 src/flashcard.py config/config.toml

Usage

Once the bot is running, you can interact with it directly through your Telegram account. The bot will guide you through the available commands and functionalities.

Contributing

Contributions to the Python Telegram Bot Flashcards project are welcome! If you encounter any issues or have suggestions for improvement, please create a new issue on the GitHub repository. If you'd like to contribute code, you can fork the repository, make your changes, and submit a pull request.

Please ensure that your code follows the existing coding style and conventions and include relevant tests with your contributions.

License

This project is licensed under the MIT License.