π¦ RaitoΒΆ
REPL, hot-reload, keyboards, pagination, and internal dev tools β all in one.
Raito is a batteries-included companion for aiogram. It removes the boilerplate from bot development: routers load themselves, change live while the bot runs, and ship with roles, pagination, multi-step scenes, keyboards, throttling and a set of in-chat developer tools.
import asyncio
from aiogram import Bot, Dispatcher
from raito import Raito
async def main() -> None:
bot = Bot(token="TOKEN")
dispatcher = Dispatcher()
raito = Raito(dispatcher, "src/handlers")
await raito.setup()
await dispatcher.start_polling(bot)
if __name__ == "__main__":
asyncio.run(main())
Where to startΒΆ
The documentation is organised in four parts, each answering a different need.
- π£ Tutorial
Learning-oriented. Build your first Raito bot from an empty folder and grow it step by step. Start here if you are new.
- π οΈ How-to guides
Task-oriented recipes. βHow do I add roles / paginate a list / build a keyboard?β Short, focused answers for things you already understand.
- π Reference
Information-oriented. The generated API, configuration options and the in-chat
.rtcommands. Look things up here.- π‘ Explanation
Understanding-oriented. How hot-reload, request-scoped scenes and the role system actually work under the hood.
Note
New to the four-part split? It follows the DiΓ‘taxis framework: tutorials teach, how-to guides solve a task, reference describes the machinery, and explanation gives you the mental model.