Важно! Grave! Important!
Пролетарии всех стран, соединяйтесь!
Proletoj el ĉiuj landoj, unuiĝu!
Workers of the world, unite!
Siriuso
Сириусо — это многофункциональный бэкенд на Django 3.2 с API GraphQL для проектов Международного сообщества Текнокомо, в первую очередь для РВМ Универсо.
Разработчики проекта и статус проекта
Проект находится в активной разработке. Во внутренних чатах в Телеграм проводятся ежедневные краткие координационные конференции и, для любителей, длинные конфы по совместной работе.
Разработка осуществляется Международным сообществом Текнокомо, в том числе ассоциированными организациями, такими как народное предприятие производственный кооператив "Советские роботы", а также людьми и организациями поддерживающими цели и задачи проекта. Наших участников мы называем кибернетиками.
На данный момент проект разрабатывается в основном общественными силами, постепенно начинается привлечение финансирования и дополнительных сил / ресурсов в проект при помощи разных источников: краудсорсинг, краудфандинг, гранты, инвестиции, которые не ломают суть проекта и т.д.
Внимание! Основная часть команды проекта являются "абсолютными коммунячными ватниками", учитывайте это при контактах с нами.
Присоединяйтесь к нашей работе! Наш девиз: "Все миры будут наши!"
Вы можете поучаствовать трудом и поддержать нас финансово через Boosty https://boosty.to/universo
Контактная информация и сообщества
Контактное лицо, генеральный разнорабочий Владимир Левадный:
- ВКонтакте https://vk.com/vladimirlevadnij
- Телеграм https://t.me/Vladimir_Levadnij
- Электропочта universo.pro@yandex.ru
Подпишитесь на наши сообщества и получайте информацию о развитии проекта:
- VK-группа РВМ Универсо https://vk.com/universo_pro
- Telegram-канал РВМ Универсо https://t.me/universo_pro
- YouTube-канал РВМ Универсо https://www.youtube.com/universo_pro
- Дзен-канал РВМ Универсо https://dzen.ru/universo_pro
- Boosty-страница РВМ Универсо https://boosty.to/universo
Документация
Мы работаем над созданием единого ресурса документации, для получения дополнительной информации свяжитесь с контактными лицами.
Описание структуры движка находится в Вики (это описание на текущий момент является устаревшим, планируется рефакторинг и актуализации данных) https://dok.universo.pro/ru/latest/django-servilo/bazo/index.html
Связанные репозитории
Ознакомьтесь, пожалуйста, с информацией об этом репозитории и связанных репозиториях:
-
siriuso
(этот репозиторий) — многофункциональный бэкенд с API GraphQL на Django 3.X и сопутствующем технологическом стеке. -
universo-godot
— полнофункциональная версия платформы РВМ Универсо разрабатываемая на Godot 4, включающая в себя функционал клиентского приложения, серверного приложения для контроля перемещения объектов, формирования урона и т.д. https://hub.mos.ru/teknokomo/universo-godot -
universo-modeloj
— репозиторий в котором разрабатывается и хранится библиотека 3D-моделей для РВМ Универсо https://hub.mos.ru/teknokomo/universo-modeloj -
universo-phaser
— упрощённая версия платформы РВМ Универсо, сосредоточенная на 2D-функционале, разрабатываемая на технологическом стеке: Quasar 2, Phaser 3, Pinia, Apollo, Webpack и т.д. https://hub.mos.ru/teknokomo/universo-phaser -
universo-utilecoj
— репозиторий с различным дополнительными утилитами для Сириусо и РВМ Универсо, в том числе для работы с базой данных https://hub.mos.ru/teknokomo/universo-utilecoj -
Более подробные схемы проекта
, в том числе структуры файлов, взаимодействия с бэкендом и т.д., создаются на рабочей доске Miro.com. -
Также планируются
другие виды фронтенда и бэкенда
, на другом технологическом стеке, в том числе на других игровых движках. Вы можете предложить свой технологический стек. -
Сейчас
ведётся разработка учебных суперинтенсивов
по быстрому освоению используемого нами технологического стека и методологий, после тестирования суперинтенсива для технологического стека Quasar + Phaser, суперинтенсив будет расширен на Godot, Django и другие технологии.
Быстрый старт
Информация в разработке, для получения дополнительной информации свяжитесь с контактными лицами.
Данный проект, на текущий момент, не поддерживает быстрый старт, не существует мастера инсталляции при помощи которого можно было бы создать все базовые сущности. Проект полноценно возможно запустить только со специальной заранее подготовленной базой данных.
Внимание! На текущий момент мы не оказываем внешнюю техническую поддержку, мы осуществляем поддержку только для участников команды разработки, к который вы можете присоединиться, если вам интересно развивать этот проект.
Использование Docker
В корне проекта находится файлы:
- docker-compose.yaml.local - отвечает за запуск проекта на локальной машине разработчика через Django-webserver. Разработчик сразу видит свои изменения.
- docker-compose.yaml.server - отвечает за запуск проекта через gunicorn. Аналог серверного/серверный запуск.
Один из файлов переименовываем в docker-compose.yaml.
Настройки базы в settings.py
'HOST': 'postgres',
'PORT': '5432',
'NAME': 'siriuso',
'USER': 'siriuso',
'PASSWORD': 'oGLOWo8nd3',
После запуска будет развернуто 6 (шесть) контейнеров:
-
Postgresql с доступностью по localhost:5432.
-
Django с доступом по localhost:8000
local - Django-webserver
или
server - запуск проекта через gunicorn
-
Redis.
-
Rabbitmq.
-
Celery.
-
Flower.
Linux
На Linux потребуется установить docker и docker-compose.
Для запуска нужно перейти в корень проекта и выполнить:
sudo docker-compose up --build
После чего нужно подождать пока скачаются образы с docker hub и соберутся контейнеры.
Для управления можно использовать те же команды что и обычно с доступом в контейнер:
sudo docker exec -it siriuso_app-django python3 manage.py
Например:
sudo docker exec -it siriuso_app-django python3 manage.py makemigrations # Подготовка миграций
sudo docker exec -it siriuso_app-django python3 manage.py migrate # Применение миграцй
sudo docker exec -it siriuso_app-django python3 manage.py createsuperuser # Создание супер пользователя
sudo docker exec -it siriuso_app-django python3 manage.py loaddata # Загрузка начальных данных
Windows
Инструкция для OS Windows находится в разработке.
Лицензия
Все проекты Омской метаплатформы, в том числе части РВМ Универсо, разрабатываются по Омской открытой лицензии / Гипервселенная модификация
. В частности, это означает, что лицензируемый объект должен использоваться в рамках Общественного Кибергосплана на авторизированных узлах цифровизации гипервселенной. Использование в рамках Общественного Кибергосплана полностью свободно и осуществляется без каких либо ограничений. Лицензия разрешает свободное изучение проекта, в том числе в коммерческих целях.
С полным текстом лицензии вы можете ознакомиться в файле LICENSE.md