🤖 Полнофункциональная платформа дизайнерских инструментов в виде Telegram бота с веб-приложениями. Включает генератор цветовых палитр, проверку контрастности цветов и генератор пар шрифтов.
- 🎨 Генератор цветовых палитр с ИИ (Colormind API)
- ⚖️ Проверка контрастности по стандартам WCAG
- 🔤 Генератор пар шрифтов (Google Fonts API)
- 👥 Система пользователей с ролевой моделью
- 📊 Аналитика и статистика использования
- 🛠️ Админ-панель для управления ботом
- Генератор цветовых палитр (color-palette-app.html)
- Проверка контрастности цветов (contrast-checker-app.html)
- Генератор пар шрифтов (font-preview-app.html)
Интеллектуальный инструмент для создания гармоничных цветовых палитр с использованием алгоритмов ИИ.
- Стандартная палитра: Генерирует сбалансированные цветовые комбинации
- UI палитра: Специально оптимизированные цвета для интерфейсов
- Базовый цвет: Возможность указать исходный цвет для генерации
- Предпросмотр цветов: Каждый цвет в палитре кликабелен для копирования
- Копирование палитры: Полное копирование всех цветов одним кликом
- Расчет контрастности: Автоматический расчет соотношения контраста
- Название палитры: Автоматическая генерация описательных имен
- Стиль палитры: Определение типа палитры (стандартная/UI)
- Контрастность: Расчет соотношения контраста между цветами
- Colormind API: Использование алгоритмов ИИ для генерации цветов
- PHP прокси: Обход CORS ограничений через локальный прокси
- Fallback система: Резервные алгоритмы при недоступности API
- HEX формат: Строгая проверка корректности цветовых кодов
- Автоформатирование: Автоматическое добавление # и преобразование в верхний регистр
- Ограничения длины: Контроль максимальной длины ввода
- Мобильная оптимизация: Полная поддержка сенсорных устройств
- PWA готовность: Поддержка установки как веб-приложения
- Telegram интеграция: Оптимизация для Telegram Web Apps
- Анимации: Плавные переходы при генерации палитр
- Hover эффекты: Интерактивная обратная связь
- Цветовые превью: Визуальное отображение выбранных цветов
Профессиональный инструмент для проверки доступности цветовых комбинаций согласно стандартам WCAG.
- WCAG AA стандарт: Проверка соответствия для нормального текста (4.5:1)
- WCAG AAA стандарт: Проверка соответствия для расширенной доступности (7:1)
- Крупный текст: Специальная проверка для текста размером 18pt+ (3:1)
- Предпросмотр текста: Демонстрация читаемости на реальном контенте
- Цветовые превью: Визуальное отображение выбранных цветов
- Уровень соответствия: Цветовая индикация AA/AAA/не соответствует
- Соотношение контраста: Точное числовое значение (например, 5.2:1)
- Статус проверки: ✅ Пройден / ❌ Не пройден для каждого типа текста
- Рекомендации: Подробные советы по улучшению доступности
- Относительная luminance: Расчет яркости по стандарту WCAG
- sRGB цветовая модель: Корректная обработка цифровых цветов
- Гамма-коррекция: Учет нелинейности восприятия яркости
- HEX формат: Строгая проверка 6-значных HEX кодов
- Автоформатирование: Удобный ввод без необходимости в # префиксе
- Обработка ошибок: Понятные сообщения об ошибках валидации
- Двойной ввод: Отдельные поля для цвета фона и текста
- Цветовые превью: Мгновенная визуальная обратная связь
- Результаты в реальном времени: Автоматический пересчет при изменении
- WCAG информация: Встроенные подсказки о стандартах доступности
- Рекомендации: Конкретные советы по улучшению контрастности
- Примеры использования: Демонстрация на типичном контенте
Умный инструмент для подбора гармоничных комбинаций шрифтов с использованием Google Fonts API.
- Случайные пары: Автоматический подбор сбалансированных комбинаций
- Стили шрифтов: 9 различных стилей (Современный, Классический, Технический и др.)
- Фиксация шрифтов: Возможность закрепить понравившийся шрифт
- Кириллица: Полная поддержка русского языка
- Латиница: Поддержка английского и европейских языков
- Автоматическое переключение: Адаптация контента под выбранный язык
- Живой превью: Демонстрация шрифтов на реальном тексте
- Анимации переходов: Плавные эффекты при смене шрифтов
- Типографические элементы: Заголовки, основной текст, подписи
- Google Fonts API: Доступ к полной библиотеке шрифтов
- Кэширование: Оптимизация загрузки и производительности
- Fallback шрифты: Резервные варианты при недоступности API
- Характеристики шрифтов: Анализ веса, насыщенности, сложности
- Совместимость: Расчет оптимального баланса между шрифтами
- История использований: Предотвращение повторений в недавних генерациях
- Локальное хранение: Сохранение выбранных шрифтов
- Telegram интеграция: Передача данных в Telegram бота
- Восстановление сессии: Сохранение состояния между запусками
- Выбор шрифтов: Модальные окна с поиском и фильтрацией
- Фиксация шрифтов: Визуальные индикаторы закрепленных шрифтов
- Стилевые фильтры: Кнопки переключения между стилями шрифтов
- Мобильная оптимизация: Сенсорные элементы и жесты
- PWA возможности: Установка как самостоятельное приложение
- Кросс-платформенность: Работа на всех современных браузерах
- Стилевые описания: Информация о характеристиках каждого стиля
- Типографические советы: Рекомендации по использованию пар шрифтов
- Визуальные примеры: Демонстрация на реальном контенте
- HTML5: Семантическая разметка
- CSS3: Адаптивный дизайн с анимациями
- Vanilla JavaScript: Нативный JavaScript без фреймворков
- Google Fonts API: Библиотека шрифтов
- Colormind API: Генерация цветовых палитр
- Telegram Web Apps API: Интеграция с Telegram
- PWA готовность: Service Workers и Web App Manifest
- CORS обход: PHP прокси для внешних API
- Кэширование: Оптимизация загрузки ресурсов
- Адаптивность: Поддержка всех устройств и экранов
- Браузеры: Chrome, Firefox, Safari, Edge (последние версии)
- Мобильные: iOS Safari, Chrome Mobile, Samsung Internet
- Telegram: Полная поддержка Telegram Web Apps
- PWA: Возможность установки как веб-приложения
- Python 3.9+
- Telegram Bot Token (получить у @BotFather)
- Google Cloud Project с Service Account (для Google Sheets)
- Веб-сервер (Apache/Nginx) с поддержкой PHP (для CORS прокси)
-
Создайте бота у BotFather:
/newbot Имя бота: Design Tools Bot Username: design_tools_bot -
Получите ваш Telegram ID:
- Напишите @userinfobot
- Сохраните ваш ID
-
Создайте Google Cloud Project:
- Перейдите в Google Cloud Console
- Создайте новый проект
-
Включите Google Sheets API:
- В APIs & Services > Library найдите "Google Sheets API"
- Включите API
-
Создайте Service Account:
- В APIs & Services > Credentials
- Create Credentials > Service Account
- Скачайте JSON ключ
-
Настройте таблицу Google Sheets:
- Создайте новую таблицу
- Поделитесь доступом с service account email
- Скопируйте ID таблицы из URL
-
Клонируйте репозиторий:
git clone https://github.com/your-username/design-bots.git cd design-bots -
Установите зависимости:
pip install -r requirements.txt
-
Настройте переменные окружения:
cp .env.example .env # Отредактируйте .env файл с вашими данными -
Настройте Google Sheets:
cp gsheets_key.example.json gsheets_key.json # Вставьте содержимое вашего service account JSON -
Обновите конфигурацию:
- Отредактируйте
config.pyесли необходимо - Проверьте ID Google Sheets таблицы
- Отредактируйте
# Запуск Telegram бота
python main.py# Вариант 1: Python
python -m http.server 8000
# Вариант 2: PHP (рекомендуется для продакшена)
# Настройте Apache/Nginx с поддержкой PHP
# Убедитесь что palette_proxy.php доступен-
Откройте веб-приложения:
http://localhost:8000/color-palette-app.htmlhttp://localhost:8000/contrast-checker-app.htmlhttp://localhost:8000/font-preview-app.html
-
Протестируйте бота:
- Напишите вашему боту в Telegram
- Попробуйте команды
/start
- CORS ошибки: Убедитесь что PHP прокси работает
- Google API ошибки: Проверьте credentials и доступ к таблице
- Bot API ошибки: Проверьте токен и права бота
-
Клонировать репозиторий
git clone <repository-url> cd design-tools
-
Запустить локальный сервер
# Используя Python python -m http.server 8000 # Или используя Node.js npx serve .
-
Открыть в браузере
http://localhost:8000
Проект распространяется под лицензией MIT. Подробности в файле LICENSE.
Приветствуются pull requests и issues на GitHub. Для крупных изменений, пожалуйста, сначала создайте issue для обсуждения предлагаемых изменений.