Project · self-hosted publishing platform · in development
Phoenix
Publishing infrastructure that belongs to you: write in Telegram, the site rebuilds and deploys itself on your own server.
Commissioned work, live in production. The client's site stays private, so this page walks through how the platform is built rather than showing their deployment – the link opens a public overview.
A request came to me: build a platform where the site truly belongs to the person running it – no platform that can change its terms, no dashboard to log into, no dependency on anyone still being in business next year. So the whole thing is built around that: you write a post as a Telegram message, the bot assembles it into the repository, git triggers the build, and the static site lands on your own server.
Media goes to S3-compatible storage so the repo stays light. The static generator is a parameter, not a foundation – swap Hugo for something else and the pipeline does not care. And because provisioning is one Ansible playbook, the entire stack can be stood up somewhere else in an evening. It is running blogs and sites for people who need exactly that kind of independence.
What it does
- Telegram message → git commit → build → deploy
- Text, photos, video, map pins in one message thread
- Git is the source of truth – nothing is locked in a database
- Static output on nginx – no runtime, no admin panel to attack
- Media offloaded to S3-compatible storage
- One Ansible playbook rebuilds the whole stack on any VPS
- Site forms route back into the same Telegram bot
Built with
PythonHugoAnsiblenginxGitS3
See the overview ↗ Проект · self-hosted платформа для публикаций · в разработке
Phoenix
Инфраструктура публикаций, которая принадлежит тебе: пишешь в Telegram, сайт сам пересобирается и выкатывается на твоём сервере.
Заказная работа, в продакшене. Сайт клиента держим закрытым – поэтому здесь разбор того, как устроена платформа, а не сам их деплой. По ссылке открывается публичный обзор.
Ко мне пришёл запрос: сделать платформу, где сайт реально принадлежит тому, кто его ведёт – без площадки, которая завтра поменяет правила, без панели, куда надо логиниться, без зависимости от того, будет ли кто-то жив как бизнес через год. Вся система построена вокруг этого: пишешь пост сообщением в Telegram, бот собирает его в репозиторий, git запускает сборку, статика уезжает на твой собственный сервер.
Медиа уходит в S3-совместимое хранилище, чтобы репозиторий оставался лёгким. Генератор сайта – параметр, а не фундамент: меняешь Hugo на что-то другое, и конвейеру всё равно. А поскольку разворачивание – это один Ansible-плейбук, весь стек поднимается в другом месте за вечер. На этом работают блоги и сайты людей, которым нужна ровно такая независимость.
Что делает
- Сообщение в Telegram → коммит в git → сборка → деплой
- Текст, фото, видео, точки на карте – одной цепочкой сообщений
- Git – источник правды, ничего не заперто в базе
- Статика на nginx – нет рантайма и нет админки, которую ломать
- Медиа уезжает в S3-совместимое хранилище
- Один Ansible-плейбук поднимает весь стек на любом VPS
- Формы с сайта возвращаются в тот же Telegram-бот
Стек
PythonHugoAnsiblenginxGitS3
Открыть обзор ↗