oshliaer / ai-florist

Repository from Github https://github.comoshliaer/ai-floristRepository from Github https://github.comoshliaer/ai-florist

🌸 AI Florist

Интеллектуальный помощник для создания уникальных букетов с использованием искусственного интеллекта

Node.js React TypeScript Vite

📖 О проекте

AI-Florist - это приложение, которое помогает создавать уникальные букеты с помощью искусственного интеллекта. Приложение использует передовые языковые модели для генерации креативных идей и рекомендаций по составлению букетов.

✨ Основные возможности

  • 🎨 Интерактивный интерфейс для создания букетов
  • 🤖 Использование ИИ для генерации идей
  • 💐 Рекомендации по сочетанию цветов
  • 📱 Адаптивный дизайн для всех устройств

🚀 Быстрый старт

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

  • Node.js v20 или выше
  • npm или yarn
  • Git

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

  1. Клонируйте репозиторий:
git clone [URL репозитория]
cd ai-florist
  1. Установите зависимости:
npm install
  1. Создайте файл .env на основе .env.example:
cp .env.example .env

🏗 Архитектура проекта

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

ai-bouquet-creator/
├── src/                  # Исходный код
│   ├── components/       # React компоненты
│   ├── services/        # Сервисы для работы с API
│   ├── store/           # Управление состоянием (Zustand)
│   ├── types/           # TypeScript типы
│   ├── utils/           # Утилиты и хелперы
│   │   └── logger.js    # Конфигурация логирования
│   └── locales/         # Локализация
├── scripts/             # Скрипты для обслуживания
│   └── cleanup-logs.js  # Очистка старых логов
├── logs/                # Директория для логов (git-ignored)
├── public/              # Статические файлы
├── server.js            # Express сервер
├── Dockerfile           # Конфигурация Docker
├── docker-compose.yml   # Конфигурация Docker Compose
├── vite.config.ts       # Конфигурация Vite
├── tsconfig.json        # Конфигурация TypeScript
├── tailwind.config.js   # Конфигурация Tailwind CSS
├── postcss.config.js    # Конфигурация PostCSS
├── .env.example         # Пример переменных окружения
├── .gitignore          # Список игнорируемых файлов
├── package.json         # Зависимости и скрипты
├── LICENSE             # MIT лицензия
└── README.md           # Документация проекта

Основные компоненты

  • Frontend: React + TypeScript
  • Сборка: Vite
  • Стили: Tailwind CSS
  • Состояние: Zustand
  • Сервер: Express.js
  • API: REST API для взаимодействия с ИИ

⚙️ Конфигурация

Переменные окружения

Переменная Описание Значение по умолчанию
VITE_OPENAI_MODE Включение/отключение моделей OpenAI false
DEBUG Режим отладки false

🔄 Процесс работы

  1. Запуск приложения

    • Пользователь открывает веб-интерфейс
    • Происходит инициализация компонентов и подключение к серверу
  2. Создание букета

    • Пользователь описывает желаемый букет
    • ИИ генерирует рекомендации
    • Пользователь может корректировать предложения
  3. Получение результата

    • Формирование финального описания букета
    • Возможность сохранения или отправки результата

🛠 Разработка

Режим отладки

Для включения расширенного логирования установите:

DEBUG=true

Запуск тестов

npm run test

📝 Логирование

В проекте реализовано расширенное структурированное логирование:

  • Автоматическая ротация логов (ежедневно)
  • Разделение по уровням (error, info, debug)
  • Сжатие старых логов
  • Автоматическая очистка через 14 дней
  • Расширенное логирование в режиме DEBUG

Структура логов

logs/
├── error-YYYY-MM-DD.log    # Логи ошибок
├── combined-YYYY-MM-DD.log # Все логи
└── archived/               # Сжатые старые логи

Управление логами

  • Включение режима отладки: DEBUG=true
  • Очистка старых логов: npm run cleanup-logs
  • Логи доступны в директории logs/

🤝 Запуск через Docker

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

  • Docker
  • Docker Compose

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

  1. Убедитесь, что Docker и Docker Compose установлены:
docker --version
docker-compose --version
  1. Создайте файл .env на основе .env.example:
cp .env.example .env
  1. Соберите и запустите контейнеры:
docker-compose up --build

После успешного запуска приложение будет доступно по адресу: http://localhost:5000

Полезные команды Docker

# Запуск в фоновом режиме
docker-compose up -d

# Остановка контейнеров
docker-compose down

# Просмотр логов
docker-compose logs -f

🤝 Вклад в проект

Мы приветствуем ваш вклад в развитие проекта!

  1. Форкните репозиторий
  2. Создайте ветку для ваших изменений
  3. Внесите изменения
  4. Создайте Pull Request

📞 Поддержка

При возникновении вопросов или проблем:

  1. Проверьте раздел Issues
  2. Создайте новый Issue с подробным описанием
  3. Обратитесь к документации

📄 Лицензия

MIT License - см. файл LICENSE

About

License:MIT License


Languages

Language:TypeScript 75.7%Language:JavaScript 21.1%Language:Dockerfile 2.6%Language:HTML 0.5%Language:CSS 0.2%