Skip to content

Telegram bot to copy new posts from channel to Zola blog based on GitHub Actions

License

Notifications You must be signed in to change notification settings

en9inerd/zola-post-bot

Repository files navigation

Zola Post Bot

Telegram bot to copy new posts from a channel to a Zola blog based on GitHub Actions.

Example of adopted Zola theme: after-dark

How it works

When a new post is published in a Telegram channel, the bot will create new post in the Zola blog and push it to the repository.

ASCII diagram of the workflow

 +-------------------------+       +------------------+      +-----------------------+   
 | Telegram Channel        |       | Telegram Bot     |      | GitHub Repository     |
 |  (New Post Published)   | ----> |  Listens for     |      |  (Zola Blog)          |
 |                         |       |  New Posts       |      |                       |
 +-------------------------+       +------------------+      +-----------------------+
                                         |                                |
                                         |                                |
                                         v                                |
                                 +------------------+                     |
                                 |   Creates New    |                     |
                                 | Zola Blog Post   |                     |
                                 +------------------+                     |
                                         |                                |
                                         v                                |
                                 +------------------+                     |
                                 |  Push to GitHub  | ------------------> |
                                 +------------------+                     |
                                                                          v
                                                          +-----------------------------+
                                                          | GitHub Actions Workflow     |
                                                          | (Build & Deploy)            |
                                                          +-----------------------------+
                                                                    |
                                                                    v
                                                         +----------------------------+
                                                         | Zola Blog Website          |
                                                         | (Post is Published)        |
                                                         +----------------------------+

Configuration

All available configuration options are listed in the config/default.js file.