2026-02-26 12:39:33 +03:00
2026-02-11 13:39:23 +03:00
2026-02-26 12:39:33 +03:00
2026-02-11 13:39:23 +03:00

ETPGRF Site — Онлайн-типограф

Version License Python Django

Официальный сайт проекта etpgrf — единой типографики для веба. Сайт предоставляет удобный интерфейс для типографирования текстов, а также содержит документацию, блог и новости проекта.

🌐 Живое демо: typograph.cube2.ru

Зеркала репозитория:

Особенности

Онлайн-типограф

  • Построен на базе библиотеки etpgrf (см.: GitHub, GitVerse, Сube2 и PyPI).
  • Поддержка русского и английского языков.
  • Гибкие настройки (кавычки, тире, неразрывные пробелы, висячая пунктуация).
  • Мгновенное копирование результата.
  • Подсветка спецсимволов (неразрывные пробелы, мягкие переносы и тому подобное) в редакторе.

Блог и контент

  • Встроенный движок блога и статических страниц.
  • Поддержка HTML в контенте.
  • Автоматическая генерация sitemap.xml.
  • Полноценная SEO-оптимизация (Open Graph, Twitter Cards, Schema.org JSON-LD).
  • RSS-лента (в планах).

Технический стек

  • Backend: Python 3.13, Django 6.0.
  • Frontend: Bootstrap 5, Alpine.js, HTMX, CodeMirror 6.
  • Infrastructure: Docker, Docker Compose, Nginx, Gunicorn.
  • CI/CD: Gitea Actions (сборка и деплой).

Установка и запуск

Предварительные требования

  • Docker и Docker Compose
  • Git

Быстрый старт (Docker)

  1. Клонируйте репозиторий:

    git clone https://github.com/erjemin/etpgrf-site.git
    cd etpgrf-site
    
  2. Создайте файл .env: Скопируйте пример и отредактируйте его:

    cp .env.example .env
    

    Обязательно задайте SECRET_KEY и ADMIN_URL.

  3. Запустите контейнеры:

    docker compose up -d --build
    
  4. Откройте сайт: Перейдите по адресу http://localhost:8000.

Локальная разработка (без Docker)

  1. Установите зависимости (через Poetry):

    poetry install
    
  2. Создайте файл .env: Скопируйте пример и отредактируйте его (если еще не сделали):

    cp .env.example .env
    

    Примечание: Убедитесь, что ваш способ запуска (IDE или терминал) подхватывает переменные из .env.

  3. Активируйте виртуальное окружение:

    poetry shell
    
  4. Примените миграции:

    python etpgrf_site/manage.py migrate
    
  5. Запустите сервер разработки:

    python etpgrf_site/manage.py runserver 8008
    
  6. Откройте сайт: Перейдите по адресу http://localhost:8008.

Структура проекта

  • etpgrf_site/ — Основной код Django-проекта.
    • typograph/ — Приложение типографа (главная страница, обработка текста).
    • blog/ — Приложение блога (посты, страницы, sitemap).
  • data/ — Директория для хранения данных (SQLite) будет создан автоматически при запуске.
  • config/ — Конфигурационные файлы (Nginx).
  • public/static/ — Статические файлы (стили, скрипты, изображения), которые отдаются напрямую Nginx внутри Docker-контейнера.
  • media/ — Медиа-файлы (загружаемые пользователем), которые отдаются напрямую внешним Nginx (или внутренним в dev-режиме).
  • docker-compose.yml — Конфигурация для разработки (по умолчанию).
  • docker-compose.prod.yml — Конфигурация для продакшена (переименуйте в docker-compose.yml для использования).
  • .env — Файл с переменными окружения (не хранится в репозитории, нужно создать самостоятельно на основе .env.example).

Лицензия

Этот проект распространяется под лицензией MIT. Подробнее см. в файле LICENSE.

Автор

Sergei Erjemin

Description
Сайт etpgrf — единая типографика для веба // Site etpgrf — effortless typography for web
https://typograph.cube2.ru/
Readme 1.6 MiB
Languages
HTML 49.3%
Python 29.1%
JavaScript 12.7%
CSS 6.9%
Dockerfile 1.3%
Other 0.7%