Skip to content

Flynotfly/Nuwa

Repository files navigation


Logo

Nuwa

Веб-приложение с чат-ботами.

Содержание
  1. Описание проекта
  2. Использование
  3. Roadmap
  4. Контакты

Описание проекта

Product Name Screen Shot

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

Особенности приложения:

  • Создание собственных чат-ботов с настраиваемым поведением
  • Каталог готовых ботов для общения
  • Удобный интерфейс ведения диалогов и истории переписки

(Вверх)

Использованные технологии

  • Python
  • Django
  • Django REST Framework
  • TypeScript
  • React
  • MUI
  • PostgreSQL
  • Celery
  • Nginx
  • Docker
  • GitHub Actions

(Вверх)

Использование

Сборка и запуск проекта

Для сборки проекта и его последующего автоматического запуска на сервере необходимо активировать workflow "Deploy to production" в GitHub Actions. Предварительно необходимо добавить следующие GitHub Actions secrets, если они отсутвуют:

  • SERVER_HOST
  • SERVER_USER
  • SSH_PRIVATE_KEY
  • DOCKERHUB_USERNAME
  • DOCKERHUB_TOKEN
  • DJANGO_SECRET_KEY
  • JWT_SIGNING_KEY
  • OLLAMA_API_KEY
  • OPENROUTER_KEY

На сервере должен быть установлен Docker и получен HTTPS сертификат.

Локальный запуск и разработка

Алгоритм запуска представлен для машины с ОС Windows 11

  1. Установить git, docker, npm 11 и uv.

  2. Склонировать репозиторий.

git clone https://github.com/Flynotfly/nuwa.git
  1. Перейти в директорию проекта.
cd nuwa
  1. Перейти в директорию Django проекта.
cd nuwa
  1. Создать виртуальное окружение python.
uv venv --python 3.14
  1. Установить зависимости.
uv sync
  1. Создать файл .env со следующими переменными окружения
  • DJANGO_SECRET_KEY
  • JWT_SIGNING_KEY
  • OLLAMA_API_KEY
  • OPENROUTER_KEY
  1. Запустить базу данных.
docker-compose -f local_docker/docker-compose.yml --env-file .env up -d
  1. Мигрировать.
uv run manage.py migrate --settings nuwa.settings.local_test
  1. Запустить проект.
uv run manage.py runserver --settings nuwa.settings.local_test
  1. Для запуска фронтенда необходимо перейти в директорию "frontend", установить npm и запустить проект в режиме разработчика.
cd ..
cd frontend
npm install
npm run dev

(Вверх)

Roadmap

  • Добавить создание собственных ботов
  • Добавить каталог готовых ботов
  • Добавить генерацию изображений с помощью ComfyUI
  • Добавить потоковую передачу сообщений
  • Добавить голосовое общение с ботами
  • Добавить поддержку загрузки файлов в диалоги
  • Добавить возможность переключения языка

(Вверх)

Контакты

alteria001@gmail.com

tg: @flynotfly

Ссылка на проект: https://github.com/Flynotfly/nuwa

(Вверх)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors