Skip to content

Разная информация

За этой категорией можно следить из открытой социальной сети, используя идентификатор разная-информация@baseinfo.nbics.net

7 Темы 11 Сообщения
  • Простая тестовая веб-страница

    3
    0 Голоса
    3 Сообщения
    2 Просмотры
    A
    Чтобы сервер работал после закрытия терминала Вариант 1: Использование systemd (Linux - рекомендуется) Создайте сервисный файл: sudo nano /etc/systemd/system/port7711.service Вставьте это (измените пути на свои): [Unit] Description=Простой HTTP сервер на порту 7711 After=network.target [Service] Type=simple User=ваше_имя_пользователя WorkingDirectory=/home/ваше_имя_пользователя/port7711 ExecStart=/usr/bin/python3 -m http.server 7711 Restart=always RestartSec=10 [Install] WantedBy=multi-user.target Запустите сервис: # Перезагрузить systemd sudo systemctl daemon-reload # Запустить сервис sudo systemctl start port7711 # Добавить в автозагрузку sudo systemctl enable port7711 # Проверить статус sudo systemctl status port7711 Вариант 2: Использование screen (Linux/Mac) Установите screen: # Ubuntu/Debian sudo apt-get install screen # Mac brew install screen Запустите сервер в screen сессии: # Создайте новую screen сессию screen -S webserver # Перейдите в папку с файлом cd ~/port7711 # Запустите сервер python3 -m http.server 7711 # Отсоединитесь от сессии: Ctrl+A, затем D Вариант 3: Использование nohup (Linux/Mac) # Перейдите в папку cd ~/port7711 # Запустите с nohup nohup python3 -m http.server 7711 > server.log 2>&1 & # Запомните PID процесса echo $! > server.pid Вариант 4: Использование Windows Service (Windows) Создайте файл run_server.vbs: CreateObject("Wscript.Shell").Run "python -m http.server 7711", 0, False Или используйте NSSM (Non-Sucking Service Manager): # Скачайте nssm с https://nssm.cc/ nssm install MyWebServer "C:\Python39\python.exe" "-m http.server 7711" nssm set MyWebServer AppDirectory C:\port7711 nssm start MyWebServer Вариант 5: Docker контейнер (универсальный) Создайте Dockerfile: FROM python:3-alpine WORKDIR /app COPY index.html . EXPOSE 7711 CMD ["python", "-m", "http.server", "7711"] Запустите: # Соберите образ docker build -t web7711 . # Запустите контейнер docker run -d -p 7711:7711 --name web7711 --restart always web7711 Как остановить сервер Для systemd: sudo systemctl stop port7711 sudo systemctl disable port7711 # убрать из автозагрузки Для screen: # Подключиться к сессии screen -r webserver # Остановить сервер: Ctrl+C # Закрыть сессию: exit Для nohup: # Найти процесс ps aux | grep http.server # Убить процесс (замените PID на реальный) kill -9 PID # Или если сохранили PID kill -9 $(cat server.pid) Для Windows (VBS): # Найти процесс tasklist | findstr python # Убить процесс taskkill /F /IM python.exe Для Docker: docker stop web7711 docker rm web7711 Простой скрипт для управления (Linux/Mac) Создайте файл manage.sh: #!/bin/bash case "$1" in start) cd ~/port7711 nohup python3 -m http.server 7711 > server.log 2>&1 & echo $! > server.pid echo "Сервер запущен с PID $(cat server.pid)" ;; stop) if [ -f server.pid ]; then kill -9 $(cat server.pid) rm server.pid echo "Сервер остановлен" else echo "PID файл не найден" fi ;; status) if [ -f server.pid ]; then if ps -p $(cat server.pid) > /dev/null; then echo "Сервер работает" else echo "Сервер не работает (PID файл устарел)" fi else echo "Сервер не запущен" fi ;; *) echo "Использование: ./manage.sh {start|stop|status}" ;; esac Сделайте скрипт исполняемым: chmod +x manage.sh ./manage.sh start ./manage.sh stop ./manage.sh status Самый простой способ для начала Для Linux/Mac используйте screen: screen -S webserver cd ~/port7711 python3 -m http.server 7711 # Ctrl+A, D для отсоединения # screen -r webserver для возврата Для Windows используйте VBS скрипт, описанный выше.
  • Jitsi Meet vs TrueConf Server

    2
    0 Голоса
    2 Сообщения
    8 Просмотры
    A
    Сильные плюсы Jitsi Meet по сравнению с TrueConf Server Jitsi Meet выделяется как open-source решение, которое предлагает большую гибкость и контроль без компромиссов, характерных для проприетарных продуктов вроде TrueConf. Вот ключевые преимущества, которые делают его сильнее в определенных сценариях (особенно для тех, кто ценит свободу, кастомизацию и отсутствие скрытых ограничений): Полностью open-source и бесплатный без ловушек: В отличие от TrueConf, где free-версия требует ежегодного продления и ограничивает конференции до 10 участников, Jitsi не имеет лицензионных ограничений, vendor-lock-in или скрытых платежей. Вы можете использовать его вечно без активации, и весь код доступен для аудита или модификации. Полный контроль над данными и приватностью: Само-хостинг позволяет держать все данные на вашем сервере, без облачных зависимостей. Это идеально для compliance (GDPR, HIPAA) и конфиденциальных сред, где TrueConf free все равно требует интернета для активации и имеет лимиты на внешние подключения (1 гость, 1 SIP). Браузерный доступ без установки: Участники присоединяются по ссылке через любой браузер (WebRTC), без нужды в клиенте. Это упрощает использование для внешних пользователей, в то время как TrueConf требует установки приложений для полного функционала, что может быть барьером. Гибкость интеграций и расширяемость: Легко интегрируется с Matrix для persistent чатов, Rocket.Chat, SIP/H.323 (без лимитов в free), и другими системами. Активное сообщество предлагает плагины для AI (шумоподавление, фон), записи, стриминга — вещи, которые в TrueConf доступны только в paid-версиях. Масштабируемость через аппаратные ресурсы: Без искусственных лимитов — до 75+ участников в HD с правильной настройкой (Jitsi Videobridge для распределения нагрузки). Для больших групп можно кластеризовать серверы, что делает его подходящим для крупных событий, где TrueConf free ограничен 10 участниками. Активное сообщество и низкие затраты на поддержку: Тысячи пользователей (market share 14.38% vs 0% у TrueConf), форумы, GSoC-проекты для новых фич. Это снижает зависимость от вендора — в отличие от TrueConf, где enterprise-кастомизация платная. Лучшая производительность в малых/средних группах: Адаптивное качество видео, низкие требования к bandwidth. Идеально для команд до 10-20 человек, где не нужна 4K, но важна стабильность без браузерных лимитов TrueConf. Эти плюсы особенно сильны для разработчиков, малого бизнеса или организаций с IT-командой, где кастомизация важнее "из коробки" фич. Можно ли сделать Jitsi лучше TrueConf, и как это сделать Jitsi можно сделать лучше TrueConf в большинстве аспектов, благодаря open-source природе — вы не ограничены вендором и можете добавить любые фичи, превзойдя даже платные версии TrueConf (например, по масштабу, интеграциям или кастомным workflow). TrueConf закрытый, так что улучшения там только через апгрейд, в то время как Jitsi позволяет бесконечную эволюцию. Вот пошаговый план, как это реализовать (на основе документации и практик сообщества): Базовая установка и оптимизация сервера: Начните с self-hosting на Linux (Ubuntu/Debian). Используйте Nginx как фронтенд для обработки веб-запросов (снижает нагрузку на Java). Перейдите на JRE11 для jicofo и videobridge — это повысит производительность. Добавьте TURN-сервер для лучшей NAT-прохождения. Это уже сделает Jitsi стабильнее TrueConf free в сетях с проблемами. Кастомизация конфигурации: Редактируйте config.js (в /etc/jitsi/meet/) для базовых улучшений: отключите ненужные фичи (AEC, NS для аудио), добавьте startWithAudioMuted=true для приватности, настройте интерфейс (удалите брендинг, кнопки). Используйте URL-параметры для динамических ссылок (например, bypass pre-join экран). Это сделает UI чище и удобнее, чем в TrueConf. Добавление продвинутых фич через API и SDK: Используйте iFrame API для встраивания в ваш сайт с кастомным контролем (events, user access). React SDK для мобильных/веб-приложений — добавьте кастомный UI, опросы, реакции. Lib-jitsi-meet для полного перестроения: создайте свой фронтенд с 4K-поддержкой, AI (интегрируйте библиотеки вроде TensorFlow для шумоподавления или фона). Это позволит превзойти TrueConf в enterprise-фичах, как удаленное управление или транскрипция, без платных апгрейдов. Масштабирование и интеграции: Добавьте несколько Videobridge для распределения нагрузки (кластеринг) — поддержка 100+ участников без лимитов. Интегрируйте с Matrix для persistent чатов, PBX для SIP/H.323 (неограниченно), или DLP для security. Для AI — подключите внешние сервисы (например, для транскрипции). Это сделает Jitsi мощнее TrueConf Enterprise в многопользовательских сценариях. Улучшение security и брендинга: Внедрите MFA, шифрование E2EE, кастомные зоны. Для брендинга: измените CSS/JS для логотипов, тем. Используйте сообщество (форум jitsi.org) для плагинов — добавьте вещи вроде webinar-регистрации или мониторинга, как в TrueConf paid. Затраты: Время разработчика (Node.js, React), но бесплатно. Если нет команды — нанимайте фрилансеров или используйте форки вроде eduMeet. В итоге Jitsi станет "вашим" продуктом, превосходящим TrueConf по гибкости, стоимости и масштабу.
  • Синтез речи на Android

    1
    0 Голоса
    1 Сообщения
    8 Просмотры
    A
    Инструкция по установке, настройке и использованию связки @Voice Aloud Reader + RHVoice (на Android) Эта связка — одна из лучших для чтения вслух текстов на русском языке: RHVoice даёт естественные оффлайн-голоса, а @Voice Aloud Reader отлично справляется с веб-страницами, PDF, книгами и текстами из других приложений. 1. Установка приложений Установите @Voice Aloud Reader: Откройте Google Play Store. Найдите "@Voice Aloud Reader" (разработчик Hyperionics Technology LLC). Установите бесплатную версию (есть реклама, но можно купить Premium-лицензию для удаления рекламы и доп.функций). Установите RHVoice: В Google Play Store найдите "RHVoice" (разработчик Olga Yakovleva или RHVoice.com). Установите приложение (бесплатное, открытый код). Откройте RHVoice. Выберите язык Русский (ru-RU). Скачайте один или несколько голосов (например, Anna, Aleksandr, Irina — они бесплатные. 2. Настройка RHVoice как основного TTS-движка RHVoice работает как системный движок синтеза речи, и @Voice будет использовать его автоматически. Перейдите в Настройки Android → Специальные возможности (или Доступность) → Текст в речь (или Вывод текста в речь, TTS-вывод — зависит от версии Android и оболочки). В разделе Предпочитаемый движок выберите RHVoice. Если нужно, настройте скорость речи, тон и другие параметры (в настройках RHVoice или системных). Протестируйте: нажмите "Прослушать пример" — должен заговорить выбранный голос RHVoice. Важно: Если вы используете TalkBack (экранный ридер), не делайте RHVoice основным системным TTS, чтобы избежать конфликтов. В @Voice можно выбрать RHVoice отдельно (см. ниже). 3. Настройка в @Voice Aloud Reader Откройте @Voice Aloud Reader. Нажмите на кнопку меню (три точки или стрелка вверх внизу экрана) → Изменить голос или язык (или "Change voice or language"). В списке движков выберите RHVoice. Выберите русский язык и конкретный голос (Anna, Aleksandr и т.д.). Прослушайте образец — если всё ок, сохраните. Дополнительно: настройте скорость речи, высоту тона (pitch), громкость прямо в этом меню. @Voice автоматически распознаёт язык текста и переключается на подходящий голос, если он доступен. 4. Использование Чтение текста из других приложений: В браузере, новостях, Telegram и т.д. выделите текст или нажмите Поделиться → выберите @Voice Aloud Reader. Текст загрузится, и начнётся чтение вслух голосом RHVoice. Открытие файлов: В @Voice нажмите меню → Открыть файл → выберите TXT, PDF, EPUB, DOC и т.д. Или поделитесь файлом из файлового менеджера. Управление воспроизведением: Кнопки внизу: Play/Pause, предыдущее/следующее предложение. Таймер сна, списки чтения, запись в аудио — всё в меню. Работает в фоне, с наушниками/Bluetooth. Полезные советы: Если голос звучит неидеально на некоторых словах — RHVoice поддерживает ударения (пишите + перед гласной, например: мóре). Для многоголосия (диалоги в книгах) в Premium-версии можно использовать аннотации для смены голосов. RHVoice полностью оффлайн после скачивания голосов — идеально для чтения без интернета. Если возникнут проблемы (например, голос не выбирается), перезапустите приложения или проверьте обновления. Эта связка работает стабильно на Android 8+.
  • Язык YAML

    2
    0 Голоса
    2 Сообщения
    4 Просмотры
    A
    Одинарные и двойные кавычки в YAML В YAML строки можно заключать в одинарные ('...') или двойные ("...") кавычки. Оба варианта корректны, но ведут себя по-разному, особенно при работе с особыми символами, переменными окружения и многострочными значениями. Ниже — полное объяснение, обновлённое для всех современных применений YAML. 1. Одинарные кавычки ('...') Что делают Одинарные кавычки всегда сохраняют строку буквально. Никакие спецсимволы, такие как: \n \t $VARIABLE \${VAR} не интерпретируются, а остаются как есть. Используйте одинарные кавычки, если: нужно передать буквально то, что написано; вы используете строки с $, \, ", JSON внутри YAML; конфигурация чувствительна к экранированию (например, regex); в Docker Compose значение не должно интерполироваться. Пример: server_name: 'element3.nbics.net' password: 'pa$$word' regex: '^\d{3}-\d{2}-\d{4}$' path: 'C:\Program Files\App' Особенность YAML: Единственный символ, который нельзя использовать напрямую внутри '...', — это '. Для него используется удвоение: text: 'Bob''s server' 2. Двойные кавычки ("...") Что делают Двойные кавычки разрешают интерполяцию переменных и управляющие последовательности: \n превращается в перенос строки \t — табуляция \" — экранирование А также: переменные окружения в Docker Compose (${VAR}) escape-последовательности YAML (формат JSON) Используйте двойные кавычки, если: нужны спецсимволы; требуется интерполяция ${VARIABLE}; конфиг используется в CI/CD, Docker Compose, K8s; значение включает переносы строк с escape. Пример: server_name: "${SERVER_NAME}" welcome: "Hello,\nworld!" path: "C:\\Users\\Admin" json: "{\"key\": \"value\"}" 3. Отличия по поведению (в таблице) Особенность 'одинарные' "двойные" Интерполяция переменных нет да Обработка \n, \t, \" нет да Выполняет escape-последовательности нет да Буквальная строка да нет Работает в Docker Compose безопаснее для переменных Вложенные кавычки только '' для ' можно \" 4. YAML без кавычек: когда можно Чаще всего YAML допускает строки без кавычек, если они не содержат спецсимволов: domain: example.com env: production Но кавычки требуются, если есть: двоеточие : (кроме конца строки) # {}, [] *, & $ (в Docker Compose!) \ 5. YAML в Docker Compose (важно для 2025) В Docker Compose "..." интерполирует переменные окружения: environment: DOMAIN: "${DOMAIN}" Если нужно отключить интерполяцию: environment: PASSWORD: '$ecure$Tr!ng' или даже: PASSWORD: '${NOT_A_VARIABLE}' 6. YAML в Ansible В Ansible двойные кавычки требуются для Jinja2: msg: "Server is {{ inventory_hostname }}" А если Jinja не нужен — безопаснее одинарные: msg: 'Literal text: {{ not_interpreted }}' 7. YAML и многострочный текст YAML использует блоковые литералы: Буквальный текст: script: | echo "Hello" echo "No interpolation" Сжатый вариант: multiline: > This is a long line that becomes a single line Кавычки тут обычно не используются. Итог: как правильно выбирать кавычки Одинарные ('...'), если: нужен буквальный текст нет интерполяции есть спецсимволы $, \, {}, которые должны остаться как есть Двойные ("..."), если: нужны переменные ${...} нужны спецсимволы \n, \t, Unicode, JSON сложные значения в CI/CD или Docker Compose
  • Список децентрализованных сервисов

    1
    0 Голоса
    1 Сообщения
    16 Просмотры
    A
    Список децентрализованных сервисов **Пользовательские сервисы ** Стандартный пользователь для большинства сервисов: Логин - nbics.net Пароль - nbics.net ** - Уникальный логин или пароль ** Краткие руководства пользователя - здесь № **Название-ссылка ** Назначение **Способ входа ** 01 NBICS.NET Цифровая мастер-платформа Стандартный пользователь 02 Element Федеративный мессенджер Стандартный пользователь 03 Jitsi Видеоконференции с шифрованием Стандартный пользователь **04 ** PeerTube Федеративный видеохостинг Стандартный пользователь **05 ** NextCloud Облачное хранилище файлов Стандартный пользователь **06 ** HumHub Социальная сеть для команд Стандартный пользователь **07 ** RoundCube Веб-интерфейс для почты Стандартный пользователь **08 ** BookStack Система документации и вики Стандартный пользователь **09 ** Mastodon Федеративный аналог Twitter Стандартный пользователь **10 ** PixelFed Федеративный фотохостинг Логин - nbics.net@wekan.nbics.net (пароль - nbics.net) **11 ** NodeBB Федеративный форум (логин - nbics.net) пароль - Nbics.net **12 ** Diagrams.net Создание диаграмм и схем Свободный доступ **13 ** OnlyOffice Офисный пакет Логин - nbics.net@nbics.net (пароль - nbics.net) **14 ** WordPress CMS для сайтов и блогов Логин - nbics Пароль - nbics.net_nbics.net **15 ** XWiki Федеративная вики-платформа Стандартный пользователь **16 ** Friendica Федеративная социальная сеть Логин - nbics (пароль - nbics.net) **17 ** Dolibarr ERP/CRM для бизнеса Стандартный пользователь **18 ** Redmine Управление проектами Стандартный пользователь 19 Wekan Канбан-доска В качестве способа авторизации выбрать - LDAP Логин - nbics.net@wekan.nbics.net (пароль - nbics.net) **20 ** **Mattermost ** Совместная работа в команде Стандартный пользователь **21 ** **Paperless-ngx ** Управление документацией Стандартный пользователь =========================== **Служебные сервисы (для разработчиков и администраторов) ** Стандартный пользователь для большинства сервисов: Логин - nbics.net Пароль - nbics.net ** - Запрос на почту diskokniga@yandex.ru ** - Уникальный логин или пароль **№ ** Название-ссылка Назначение **Способ входа ** **2 ** GitLab Репозитории и CI/CD Стандартный пользователь **3 ** Gitea Лёгкая альтернатива GitLab Стандартный пользователь **4 ** Webmin Веб-интерфейс для администрирования сервера Служебный вход **5 ** Quant-UX Прототипирование и UX-тестирование Логин - nbics.net@wekan.nbics.net (пароль - nbics.net) **6 ** Node-RED Графический редактор для автоматизации Свободный доступ **7 ** Code-server VS Code в браузере Стандартный пользователь **8 ** Portainer Управление контейнерами Docker Служебный вход **9 ** Matrix Synapse Сервер для мессенджера Element Серверная часть, вход служебный
  • Характеристики серверов

    1
    0 Голоса
    1 Сообщения
    38 Просмотры
    A
    Характеристики серверов Тип 1 - Тестовый (5 - 10 пользователей) Характеристика Значение ОЗУ 8 - 16 ГБ CPU 2 ядра (Intel Core i3-10100 / AMD Ryzen 3 3200G) Хранилище HDD 100 - 250 ГБ Интернет 25-50 Мбит/с (download/upload) Статический адрес У провайдера интернета Доменное имя Reg.ru и т.д. ================================ Тип 2 - Минимальный (10 - 50 пользователей) Характеристика Значение ОЗУ 16 ГБ CPU 2- 4 ядра (Intel Core i5-10400 / AMD Ryzen 5 3400G) Хранилище HDD 250-500 ГБ Интернет 50-100 Мбит/с (download/upload) Статический адрес У провайдера интернета Доменное имя Reg.ru и т.д. ================================ Тип 3 - Средний (50 - 100 пользователей) Характеристика Значение ОЗУ 32 ГБ CPU 6-8 ядер (Intel Core i7-11700 / AMD Ryzen 7 5800X) Хранилище HDD 500 ГБ -1 ТБ Интернет 100 - 250 Мбит/с (download/upload) Статический адрес У провайдера интернета Доменное имя Reg.ru и т.д. ================================ Тип 4 - VIP (100+ пользователей) Характеристика Значение ОЗУ 64 ГБ CPU 12-16 ядер (Intel Core i9-12900K / AMD Ryzen 9 5950X) Хранилище HDD 1-4 ТБ + SSD 250 - 500 ГБ - 1 ТБ Интернет 500 Мбит/с (download/upload) Статический адрес У провайдера интернета Доменное имя Reg.ru и т.д. ================================ Тип 5 - SuperVIP (1000+ пользователей) Характеристика Значение ОЗУ 128 ГБ DDR5 CPU Intel Xeon W-3375 (38 ядер) / AMD EPYC 7313P (16 ядер) Хранилище SSD 2 ТБ NVMe + HDD 8 ТБ (RAID опционально) Интернет 1 Гбит/с (1000 Мбит/с, download/upload) Статический адрес У провайдера интернета Доменное имя Reg.ru и т.д. ================================================================= Дополнительно для сервера SuperVIP - видеокарты, ускоряющие работу локального искусственного интеллекта: -------------------------------------------------------------------------------------------------------------------------------------------------------- Топовые видеокарты (80 ГБ VRAM) – максимальная производительность Видеокарта Максимальная LLM, которую потянет NVIDIA H100 80GB (4,3 млн ₽) DeepSeek 67B, LLaMA 2 65B, GPT-3.5 (с отличной скоростью) NVIDIA A100 80GB (1,97 млн ₽) DeepSeek 67B, LLaMA 2 65B (чуть медленнее H100) Эти видеокарты – серверные (требуют PCIe 4.0 x16 и мощное охлаждение). Используются в дата-центрах, оптимальны для обучения и работы крупных LLM. Полупрофессиональные видеокарты (48 ГБ VRAM) – для мощных серверов Видеокарта Максимальная LLM, которую потянет NVIDIA RTX 6000 Ada (920 тыс. ₽) DeepSeek 33B, LLaMA 2 30B (с комфортной скоростью) Промежуточный вариант между A100 и RTX 4090. Хорош для средних моделей (но DeepSeek 67B уже не потянет). Оптимальные игровые видеокарты (24 ГБ VRAM) – лучший баланс Видеокарта Максимальная LLM, которую потянет RTX 4090 24GB (170–200 тыс. ₽) DeepSeek 13B, LLaMA 2 13B (нормальная скорость) Лучший вариант для мощного ИИ на личном сервере. LLaMA 2 30B потянет с Offload (RAM), но медленно. Бюджетные видеокарты (16 ГБ VRAM) – для небольших моделей Видеокарта Максимальная LLM, которую потянет RTX 4080 16GB (130 тыс. ₽) DeepSeek 7B, LLaMA 2 7B (комфортно) RTX 4070 Ti 16GB (95 тыс. ₽) DeepSeek 7B, LLaMA 2 7B (чуть медленнее 4080) Для полноценных LLM мало VRAM – для больших моделей нужен Offload (RAM), что сильно замедляет работу. Итог: какую выбрать? ​ Если важна скорость и мощность → RTX 4090 (24 ГБ) (оптимум для LLM 13B, 30B с Offload). Если бюджет ограничен → RTX 4080 (16 ГБ) (но модели 13B+ работать будут медленно). Если нужен серверный уровень → NVIDIA A100 80GB (но цена 1,97 млн ₽).
  • Ссылки на официальную документацию сервисов

    Перенесена
    1
    0 Голоса
    1 Сообщения
    4 Просмотры
    A
    Ссылки на официальную документацию сервисов Название веб-сервиса Ссылка на документацию Portainer https://docs.portainer.io/ Webmin https://webmin.com/docs/ Code-server https://coder.com/docs Penpot https://help.penpot.app/ Drone https://docs.drone.io/ Gitea https://docs.gitea.com/ Jitsi Meet https://jitsi.github.io/handbook/docs/intro PeerTube https://docs.joinpeertube.org/ Matrix Synapse https://element-hq.github.io/synapse/latest/welcome_and_overview.html NextCloud https://docs.nextcloud.com/ HumHub https://docs.humhub.org/ NodeBB https://docs.nodebb.org/ OnlyOffice https://helpcenter.onlyoffice.com/index.aspx Mailcow https://docs.mailcow.email/ BookStack https://www.bookstackapp.com/docs/ Wiki.js https://docs.requarks.io/ Erachain https://docs.erachain.org/ru Ollama https://github.com/ollama/ollama/blob/main/docs/api.md OpenVidu https://docs.openvidu.io BigBlueButton https://docs.bigbluebutton.org/