-
![](https://cdn.nostrcheck.me/91bea5cd9361504c409aaf459516988f68a2fcd482762fd969a7cdc71df4451c/bb918285e16d032afc7b154c02fbc57771cbb0911dcdbdc8bcc25a3fa9789303.webp)
@ ok3e
2025-02-04 05:24:47
Novia é uma ferramenta inovadora que facilita o arquivamento de vídeos e sua integração com a rede NOSTR (Notes and Other Stuff Transmitted over Relay). Funcionando como uma ponte entre ferramentas de arquivamento de vídeo tradicionais e a plataforma descentralizada, Novia oferece uma solução autônoma para a preservação e compartilhamento de conteúdo audiovisual.
### Arquitetura e Funcionamento
A arquitetura de Novia é dividida em duas partes principais:
* **Frontend:** Atua como a interface do usuário, responsável por solicitar o arquivamento de vídeos. Essas solicitações são encaminhadas para o backend.
* **Backend:** Processa as solicitações de arquivamento, baixando o vídeo, suas descrições e a imagem de capa associada. Este componente é conectado a um ou mais relays NOSTR, permitindo a indexação e descoberta do conteúdo arquivado.
O processo de arquivamento é automatizado: após o download, o vídeo fica disponível no frontend para que o usuário possa solicitar o upload para um servidor Blossom de sua escolha.
### Como Utilizar Novia
1. **Acesso:** Navegue até [https://npub126uz2g6ft45qs0m0rnvtvtp7glcfd23pemrzz0wnt8r5vlhr9ufqnsmvg8.nsite.lol](https://npub126uz2g6ft45qs0m0rnvtvtp7glcfd23pemrzz0wnt8r5vlhr9ufqnsmvg8.nsite.lol).
2. **Login:** Utilize uma extensão de navegador compatível com NOSTR para autenticar-se.
3. **Execução via Docker:** A forma mais simples de executar o backend é através de um container Docker. Execute o seguinte comando:
```bash
docker run -it --rm -p 9090:9090 -v ./nostr/data:/data --add-host=host.docker.internal:host-gateway teamnovia/novia
```
Este comando cria um container, mapeia a porta 9090 para o host e monta o diretório `./nostr/data` para persistir os dados.
### Configuração Avançada
Novia oferece amplas opções de configuração através de um arquivo `yaml`. Abaixo, um exemplo comentado:
```yaml
mediaStores:
- id: media
type: local
path: /data/media
watch: true
database: /data/novia.db
download:
enabled: true
ytdlpPath: yt-dlp
ytdlpCookies: ./cookies.txt
tempPath: /tmp
targetStoreId: media
secret: false
publish:
enabled: true
key: nsec
thumbnailUpload:
- https://nostr.download
videoUpload:
- url: https://nostr.download
maxUploadSizeMB: 300
cleanUpMaxAgeDays: 5
cleanUpKeepSizeUnderMB: 2
- url: https://files.v0l.io
maxUploadSizeMB: 300
cleanUpMaxAgeDays: 5
cleanUpKeepSizeUnderMB: 2
- url: https://nosto.re
maxUploadSizeMB: 300
cleanUpMaxAgeDays: 5
cleanUpKeepSizeUnderMB: 2
- url: https://blossom.primal.net
maxUploadSizeMB: 300
cleanUpMaxAgeDays: 5
cleanUpKeepSizeUnderMB: 2
relays:
- ws://host.docker.internal:4869
- wss://bostr.bitcointxoko.com
secret: false
autoUpload:
enabled: true
maxVideoSizeMB: 100
fetch:
enabled: false
fetchVideoLimitMB: 10
relays:
- <a relay with the video events to mirror>
match:
- nostr
- bitcoin
server:
port: 9090
enabled: true
```
**Explicação das Configurações:**
* **`mediaStores`**: Define onde os arquivos de mídia serão armazenados (localmente, neste exemplo).
* **`database`**: Especifica o local do banco de dados.
* **`download`**: Controla as configurações de download de vídeos, incluindo o caminho para o `yt-dlp` e um arquivo de cookies para autenticação.
* **`publish`**: Configura a publicação de vídeos e thumbnails no NOSTR, incluindo a chave privada (`nsec`), servidores de upload e relays. **Atenção:** Mantenha sua chave privada em segredo.
* **`fetch`**: Permite buscar eventos de vídeo de relays NOSTR para arquivamento.
* **`server`**: Define as configurações do servidor web interno de Novia.
### Conclusão
Novia surge como uma ferramenta promissora para o arquivamento e a integração de vídeos com o ecossistema NOSTR. Sua arquitetura modular, combinada com opções de configuração flexíveis, a tornam uma solução poderosa para usuários que buscam preservar e compartilhar conteúdo audiovisual de forma descentralizada e resistente à censura. A utilização de Docker simplifica a implantação e o gerenciamento da ferramenta. Para obter mais informações e explorar o código-fonte, visite o repositório do projeto no GitHub: [https://github.com/teamnovia/novia](https://github.com/teamnovia/novia).