Sobre o projeto

Mastarr é um aplicativo de código aberto projetado para revisar mídia baixada e reconciliá-la com stacks de mídia existentes, com foco na integração com Radarr, Sonarr, Jellyfin e Seerr. Atualmente na fase de implementação para a versão 0.0.1, o projeto fornece uma estrutura robusta para descobrir arquivos de vídeo e legendas em diretórios de download configurados, incluindo aqueles onde o histórico de download foi perdido. A funcionalidade central gira em torno de um dashboard de revisão abrangente que exibe a proveniência do download, a mídia rastreada e estados distintos para registro, importação e disponibilidade em todas as instâncias conectadas. Os usuários podem realizar ações como registrar e importar mídia por meio de aplicativos Arr, colocar arquivos diretamente em bibliotecas ou organizar e limpar arquivos. Cada uma dessas ações é exposta via contratos REST independentes, garantindo uma estrutura de API clara. Tecnicamente, Mastarr emprega um backend baseado em Go utilizando portas de arquitetura hexagonal, oapi-codegen para geração de API, SQLite para armazenamento de dados, sqlc para SQL com segurança de tipos e golang-migrate para migrações de banco de dados. O frontend é servido por um módulo de UI Go aninhado que atua como um Backend-For-Frontend (BFF) para o dashboard Goshtoso. O sistema suporta workflows duráveis, mostrando aprovações, falhas parciais, retentativas e status de cancelamento. Recursos de segurança como autenticação básica e OIDC estão planejados para versões futuras (v0.0.2), com v0.0.1 focando na funcionalidade principal sem autenticação de aplicativo. O projeto inclui documentação detalhada cobrindo especificações do sistema, contratos HTTP, portas de conector, mecanismos de recuperação de dados, opções de configuração e limites do dashboard. Enfatiza um processo de desenvolvimento estruturado com pistas de implementação, matrizes de aceitação e hooks de pré-commit para qualidade de código.