Рефакторизация структуры кода для улучшения читаемости и удобства сопровождения.

This commit is contained in:
2026-04-30 07:41:41 +03:00
parent eec534760e
commit 89b17ea2b2
1406 changed files with 38483 additions and 3 deletions
+11
View File
@@ -0,0 +1,11 @@
# Адрес прослушивания веб-сервера
listen: "0.0.0.0:8002"
# Строка подключения к базе данных (MySQL/MariaDB)
database: "mysql://route96:moneyprintergobrrr@route96_db_1:3306/route96"
# Каталог для хранения загрузок
storage_dir: "/app/data"
# Максимальный поддерживаемый размер файла для загрузки (100 MB)
max_upload_bytes: 104857600
View File
View File
+46
View File
@@ -0,0 +1,46 @@
manifestVersion: 1
id: route96
category: social
name: Route96
version: "0.7.0"
tagline: Медиасервер Blossom/NIP-96 для Nostr
description: >-
Route96 — это автономный медиа-сервер для экосистемы Nostr.
внедрение протокола Blossom и стандарта NIP-96, чтобы вы могли хранить
и обслуживайте файлы непосредственно со своего узла.
Ключевые особенности:
- Поддержка протокола Full Blossom (BUD-01BUD-09): загрузка, загрузка, удаление, составление списка, зеркалирование и оптимизация мультимедиа.
- Протокол хранения файлов NIP-96 с аутентификацией Nostr (события типа 24242)
- Сжатие изображений и видео с автоматическим преобразованием WebP и созданием миниатюр.
- Предварительный просмотр прогрессивных изображений Blurhash
- Маркировка контента ИИ с использованием настраиваемых моделей HuggingFace ViT.
- Защита конфиденциальности EXIF — при необходимости отклоняйте изображения с конфиденциальными метаданными, такими как координаты GPS.
- Поддержка белого списка для ограничения загрузки утвержденными открытыми ключами Nostr.
- Управление квотами для каждого пользователя
- Веб-панель администратора для управления контентом и пользователями.
- Очередь модерации с отчетами сообщества (NIP-56) и автоматической пометкой.
- Поддержка запроса диапазона RFC 7233 для плавной потоковой передачи видео.
Route96 создан на Rust для обеспечения высокой производительности и низкого использования ресурсов.
естественным образом сочетается с любым реле или клиентом Nostr.
developer: v0l
website: https://github.com/v0l/route96
dependencies: []
repo: https://github.com/v0l/route96
support: https://github.com/v0l/route96/issues
port: 8002
gallery:
- 1.jpg
- 2.jpg
- 3.jpg
path: ""
defaultUsername: ""
defaultPassword: ""
releaseNotes: ""
torOnly: false
submitter: kieran
submission: https://github.com/getumbrel/dfwebos-apps/pull/5064
+33
View File
@@ -0,0 +1,33 @@
version: "3.7"
services:
app_proxy:
environment:
APP_HOST: route96_server_1
APP_PORT: 8002
PROXY_AUTH_ADD: "false"
server:
image: voidic/route96:v0.7.0@sha256:5ab6064f18ca191dd5836487505607122ef3bfeba6e6ccc5b28eef5c604cf4cc
user: "1000:1000"
restart: on-failure
volumes:
- ${APP_DATA_DIR}/data/uploads:/app/data
- ${APP_DATA_DIR}/data/config.yaml:/app/config.yaml
environment:
RUST_LOG: "info"
APP_PUBLIC_URL: "http://${APP_DOMAIN}:8002"
depends_on:
- db
db:
image: mariadb:11.2.4@sha256:e9ea1dbab6783ff0281e41e3357d950a5f598b2033559b8443e03b181807910b
user: "1000:1000"
restart: on-failure
volumes:
- ${APP_DATA_DIR}/data/db:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: "moneyprintergobrrr"
MYSQL_USER: "route96"
MYSQL_PASSWORD: "moneyprintergobrrr"
MYSQL_DATABASE: "route96"