diff --git a/README.md b/README.md index 0a6810b..7fe114b 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,145 @@ +Конечно, вот обновленная версия README на английском и русском языках, с учётом ваших уточнений. + +*** + +### English Version + +# TeleJ + +An elegant Java library for creating Telegram bots, featuring a framework module to reduce boilerplate and speed up development. + +## ⚠️ Project Status ⚠️ + +**This project is currently under active development.** APIs may change, and features are still being added. It is not yet recommended for production use. + +## About The Project + +TeleJ is a library designed to simplify and accelerate the process of creating Telegram bots in Java. It provides a convenient API and a modular structure that helps you focus on your bot's logic rather than on repetitive code. + +## Key Features + +* **Simple Setup:** Get started with your bot quickly. +* **Modular Architecture:** Includes a `core` module, an `event-handlers` framework module, and other components that can be included as needed. +* **Modern Approach:** Utilizes modern Java features to create clean and readable code. +* **Extensible:** Easily extendable to add custom functionality. + + +### Usage Example + +Below is a simple example of how to create and run a bot using TeleJ. + +```java +public class MyAwesomeBot { + + private static final TelegramBot telegramBot = new OkHttpTelegramBot("token"); + + public static void main(String[] args) { + + + telegramBot.start(new UpdateConsumer() { + @Override + public void onUpdate(Update update) { + + if (update.hasMessage()) { + Message message = update.message(); + if (message.hasText()) { + if (message.text().equalsIgnoreCase("ping!")) { + telegramBot.execute(new SendMessage.Builder( + message.chatId(), "pong!").replyToMessage(message.messageId()) + .build()); + } + } + } + } + });! + + + } +} +``` + +## Project Structure + +The project consists of several modules: + +* `core`: The core of the library with all the basic functions for interacting with the Telegram Bot API. +* `event-handlers`: A framework module designed to reduce boilerplate and speed up development by simplifying the handling of events and updates from Telegram. +* `annotation-processor`: An annotation processor to simplify code writing. +* `longpolling-okhttp`: An implementation for receiving updates via Long Polling using OkHttp. + +## License + +This project is distributed under the MIT License. + +*** + +### Русская версия + +# TeleJ + +Изящная библиотека на Java для создания ботов в Telegram, с модулем фреймворка для ускорения разработки и уменьшения количества шаблонного кода. + +## ⚠️ Статус проекта ⚠️ + +**Этот проект находится в стадии активной разработки.** API может изменяться, а новые функции все еще добавляются. Пока не рекомендуется использовать его в продакшене. + +## О проекте + +TeleJ — это библиотека, разработанная для упрощения и ускорения процесса создания ботов для Telegram на языке Java. Она предоставляет удобный API и модульную структуру, которая помогает сосредоточиться на логике вашего бота, а не на повторяющемся коде. + +## Основные возможности + +* **Простая настройка:** Быстрое начало работы с вашим ботом. +* **Модульная архитектура:** Включает основной модуль (`core`), модуль фреймворка (`event-handlers`) и другие компоненты, которые можно подключать по мере необходимости. +* **Современный подход:** Использует современные возможности Java для создания чистого и читаемого кода. +* **Расширяемость:** Легко расширяется для добавления пользовательского функционала. +### Пример использования -Total lines of code: +Ниже приведен простой пример того, как создать и запустить бота с использованием TeleJ. + +```java +public class MyAwesomeBot { + + private static final TelegramBot telegramBot = new OkHttpTelegramBot("token"); + + public static void main(String[] args) { + + + telegramBot.start(new UpdateConsumer() { + @Override + public void onUpdate(Update update) { + + if (update.hasMessage()) { + Message message = update.message(); + if (message.hasText()) { + if (message.text().equalsIgnoreCase("ping!")) { + telegramBot.execute(new SendMessage.Builder( + message.chatId(), "pong!").replyToMessage(message.messageId()) + .build()); + } + } + } + } + });! -

-08 April 2025 22:07:16 code: 6094 docs: 173 -

+ } +} +``` + +## Структура проекта + +Проект состоит из нескольких модулей: + +* `core`: Ядро библиотеки со всеми основными функциями для взаимодействия с Telegram Bot API. +* `event-handlers`: Модуль фреймворка, предназначенный для уменьшения бойлерплейта (шаблонного кода) и ускорения разработки за счет упрощения обработки событий и обновлений от Telegram. +* `annotation-processor`: Обработчик аннотаций для упрощения написания кода. +* `longpolling-okhttp`: Реализация получения обновлений через Long Polling с использованием OkHttp. + + +## Лицензия + +Этот проект распространяется под лицензией MIT License. \ No newline at end of file