Skip to content
This repository was archived by the owner on Dec 2, 2025. It is now read-only.

Shwepsik2121-ai/aether-chat-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 Aether Chat App - Готов к Деплою на хостинг(проверенный на render.com)!

Добро пожаловать в Aether Chat App – интерактивное веб-приложение для чата, созданное на базе мощной языковой модели Google Gemini! 🤖 Этот проект идеально подходит для быстрого развертывания в облаке, используя Flask для бэкенда и чистого HTML/CSS/JS для динамичного пользовательского интерфейса. Он разработан с учетом специфики хостинга на Render.com, что делает его деплой простым и быстрым! 🎉

✨ Особенности:

  • Мгновенный Стриминг Ответов: Получайте ответы от ИИ в реальном времени, слово за словом, благодаря технологии стриминга. Больше никаких долгих ожиданий! ⚡️
  • Оптимизирован для Render.com: Включает Procfile и gunicorn в requirements.txt, что обеспечивает бесшовное развертывание и масштабирование на платформе Render.com. Просто подключи репозиторий и деплой!
  • Динамический UI: Современный и адаптивный дизайн, который автоматически подстраивается под светлую или темную тему вашей системы. 🌓
  • Поддержка Markdown и Подсветка Кода: ИИ может форматировать свои ответы с помощью Markdown, включая блоки кода с синтаксической подсветкой для удобства чтения. ✍️
  • Сохранение Истории Чата: Ваша беседа с ИИ сохраняется в базе данных (поддержка PostgreSQL для Render.com и SQLite для локальной разработки), позволяя продолжить диалог, не теряя контекста. 💾
  • Настраиваемая Модель ИИ: Легко взаимодействует с моделями Google Gemini (текущая по умолчанию - gemini-2.5-flash).

🛠️ Технологии:

  • Frontend:
    • HTML5: Структура веб-страницы.
    • CSS3: Стилизация и адаптивность, включая переменные CSS для легкой смены тем.
    • JavaScript (Vanilla JS): Динамическое поведение, взаимодействие с API, эффект печати.
    • Marked.js: Для рендеринга Markdown в HTML.
    • Highlight.js: Для синтаксической подсветки блоков кода.
  • Backend:
    • Python 3: Основной язык бэкенда.
    • Flask: Легковесный веб-фреймворк для обработки запросов и маршрутизации.
    • Google Gemini API (через google-genai): Для взаимодействия с языковыми моделями Google.
    • Flask-SQLAlchemy: ORM для работы с базами данных.
    • python-dotenv: Для безопасной загрузки переменных окружения (например, API ключа и URL базы данных).
    • gunicorn: WSGI HTTP-сервер для продакшн-развертывания.
  • База данных:
    • PostgreSQL: Рекомендуемая база данных для продакшн-развертывания на Render.com.
    • SQLite: Используется по умолчанию для локальной разработки, если DATABASE_URL не указан.

⚙️ Деплой на Render.com:

  1. Форкните или склонируйте этот репозиторий в свой аккаунт GitHub.
  2. Перейдите на Render.com и создайте новый "Web Service".
  3. Подключите свой GitHub репозиторий.
  4. Настройте переменные окружения на Render.com:
    • GOOGLE_API_KEY: Ваш API-ключ Google Gemini. (Обязательно!)
    • DATABASE_URL: URL вашей PostgreSQL базы данных (если вы используете её). Render.com может автоматически создать для вас PostgreSQL базу данных.
  5. Render.com автоматически обнаружит Procfile и requirements.txt и развернет ваше приложение!
  6. Убедитесь, что в Build Command и Start Command указаны правильные команды (обычно pip install -r requirements.txt и gunicorn app:app).
  7. После успешного деплоя, Render.com предоставит вам публичную ссылку на ваше приложение, например: https://abcd-dasd-m4qa.onrender.com/. Перейдите по этой ссылке, чтобы взаимодействовать с вашим чат-ботом! ✨

💻 Локальная Установка и Запуск (для Разработки):

Если вы хотите запустить проект локально для разработки или тестирования:

  1. Клонируйте репозиторий:
    git clone https://github.com/Shwepsik2121-ai/aether-chat-app.git
    cd aether-chat-app
  2. Создайте и активируйте виртуальное окружение:
    python -m venv venv
    # Для Windows:
    .\venv\Scripts\activate
    # Для macOS/Linux:
    source venv/bin/activate
  3. Установите зависимости:
    pip install -r requirements.txt
  4. Создайте файл .env в корневой директории проекта и добавьте ваш API-ключ Google Gemini:
    GOOGLE_API_KEY="ВАШ_API_КЛЮЧ_GEMINI"
    DATABASE_URL="sqlite:///temp_chat.db" (или ваш URL PostgreSQL)
    
    (Получить API-ключ можно здесь: https://aistudio.google.com/apikey)
  5. Запустите приложение Flask:
    python app.py
  6. Откройте в браузере: Перейдите по адресу http://localhost:5000

🤝 Вклад:

Приветствуются любые вклады, предложения и улучшения! Если у вас есть идеи, пожалуйста, открывайте issues или отправляйте pull requests. Давайте сделаем Эфир ещё лучше! ✨


photo-2025-06-06-21-51-04

About

Aether Chat App: Веб-чат на Python/Flask с ИИ Gemini, стримингом и сохранением истории.

Topics

Resources

License

Stars

Watchers

Forks

Contributors