EaglePress: как построить CMS без лишних фреймворков
Когда меньше кода — больше контроля
В веб-разработке часто получается странная ситуация. Мы гонимся за минимализмом и лёгкими инструментами, но в итоге проекты обрастают десятками зависимостей. Простой блог тянет за собой целый сервер, ORM, шаблонизатор и кучу middleware — хотя большая часть этого кода вам никогда не понадобится.
EaglePress работает иначе. Это CMS, написанная на чистом Python 3 без фреймворков. Никаких лишних слоёв абстракции: только CGI-роутер, прямые SQL-запросы и система тем, которая даёт разработчику реальный контроль.
Почему важна радикальная простота
Всё приложение умещается в одном файле index.py. Хотите добавить функцию — просто открываете его и читаете. Нужно разобраться с авторизацией — не придётся копаться в документации Django. Для аудита, проверки безопасности и доработок это огромное преимущество.
Каждый SQL-запрос виден и параметризован. Никаких ORM, которые генерируют непонятные запросы под капотом. Если вы работаете с чувствительными данными или проходите compliance-проверку, легко отследить, что именно уходит в PostgreSQL.
Развёртывание тоже простое. Архив весит всего 325 КБ. Никаких виртуальных окружений, pip и контейнеров. Достаточно закинуть файлы на Apache или Nginx с поддержкой CGI — и сайт готов к работе за несколько минут.
Такой подход не для всех. EaglePress ориентирован на разработчиков и небольшие команды, которым важнее прозрачность и удобство поддержки, а не удобство экосистемы.
Реальные возможности без лишнего
EaglePress v1.93 предлагает вполне солидный набор функций:
Автоматические обновления в один клик с проверкой SHA-512. Панель управления показывает, что доступна новая версия, затем загружает, проверяет, разворачивает её и проводит миграции БД — без командной строки. Для тех, кто не любит техническую часть, это особенно ценно.
Интеграция с маркетплейсом тем — с предпросмотром, оценками и установкой прямо из админки. В комплекте пять тем, где одна особенно примечаняется: NewsTheme с тёмным режимом, цветовой палитрой и бегущей строкой. В маркета есть и ModernTheme.
Архитектура плагинов с доступным каталогом. Первый опубликованный плагин — Polling & Voting — показывает, как работает вся архитектура: можно создавать interactive polls с разбивкой по штатам и delayed results.
Markdown-редактор поддерживает автосохранение каждые две секунды. Есть превью по вкладкам, выбор из 1500 эмодзи по категориям и контроль над slug для каждой статьи. Это не просто редактор — он учитывает, как в реальности работают авторы.
Нативная подсветка синтаксиса для 12 языков программирования с 11 цветовыми темами. Никаких CDN и стороннего JavaScript — всё работает на стороне сервера в чистом Python. Леген<|eos|>