This repository contains the source code for the aiogram framework's official website.
aiogram is a modern and fully asynchronous framework for Telegram Bot API written in Python using asyncio and aiohttp. It's designed to be easy to use and focuses on modern Python features.
- Documentation: docs.aiogram.dev
- Blog/Updates: Telegram Channel @aiogram_live
- GitHub Repository: github.com/aiogram/aiogram
- Community Chat: t.me/aiogram
The aiogram website integrates with several external resources:
- The Documentation is hosted separately at docs.aiogram.dev
- The Blog content is provided via the Telegram channel @aiogram_live rather than being part of the Jekyll site
- The site also links to the GitHub repository and other community resources
This website is built using Jekyll, a static site generator.
The easiest way to run this site locally is using Docker:
-
Clone this repository:
git clone https://github.com/aiogram/site.git cd site
-
Build and run using Docker Compose:
docker-compose up
-
Visit
http://localhost:4000
in your browser to see the site.
If you prefer to run the site without Docker:
- Install Ruby and Bundler
- Clone this repository
- Install dependencies:
bundle install
- Run the development server:
bundle exec jekyll serve --livereload
- Visit
http://localhost:4000
in your browser
You can also use Rake tasks for common operations:
# Serve locally
rake serve
# Build for production
rake build
# Serve with production environment
rake serve_prod
# Clean build artifacts
rake clean
This site is configured to deploy automatically to GitHub Pages using GitHub Actions. Here's how it works:
- When you push to the
main
branch, GitHub Actions will build and deploy the site - The workflow is defined in
.github/workflows/github-pages.yml
- The site is deployed to aiogram.dev
If you need to deploy manually:
-
Build the site:
JEKYLL_ENV=production bundle exec jekyll build
-
The built site will be in the
_site
directory
If you get an error like The minima theme could not be found
, make sure you have the minima gem installed in your Gemfile:
gem "minima", "~> 2.5.1"
Then run bundle install
before starting the server.
Contributions to improve the website are welcome! Please follow these steps:
- Fork the repository
- Create your feature branch
- Make your changes
- Submit a pull request
This project is licensed under the MIT License - see the LICENSE file for details.