Firecast é um sistema imersivo de controle remoto web projetado especificamente para Smart TVs e navegadores (como o Amazon Silk no Fire TV). Ele permite que você exiba vídeos do YouTube em tela cheia (estilo aplicativo nativo) na TV, enquanto controla toda a reprodução — vídeo, áudio, legendas e modo imersivo — diretamente pelo seu celular ou computador através de um Painel Admin integrado.
- Controle Remoto de Vídeo: Altere instantaneamente o vídeo exibido na TV colando a URL do YouTube.
- Áudio e Controles: Play, Pause, Aumentar, Diminuir e Mutar/Desmutar.
- Legendas Dinâmicas: Ligue/desligue as legendas, troque entre Inglês (EN) e Português (PT) e controle o tamanho da fonte.
- Modo Tela Cheia "Aplicativo": Oculta a barra do navegador (Amazon Silk) definitivamente para uma experiência nativa, com controles de expandir/recolher remotos.
- Hard Reset: Um botão de pânico no painel que limpa todo o cache, local storage, cookies e força um recarregamento total da TV.
- Ter o Node.js instalado na sua máquina (versão 18+ recomendada).
- Clone este repositório para a sua máquina:
git clone git@github.com:magicoven-tech/firecast.git
cd firecast- Instale as dependências:
npm installSe você for modificar o código e quiser que o servidor reinicie sozinho a cada salvamento, use:
npm run devPara rodar o servidor padrão sem o sistema de recarregamento (Nodemon):
npm startTransformamos o sistema em um aplicativo de desktop completo usando Electron. O aplicativo roda como uma janela nativa no seu dock, iniciando o servidor no fundo e abrindo o Painel Admin lindamente, sem precisar do terminal depois de instalado.
npm run start:mac(Isso inicia o servidor e abre a janela do aplicativo no seu Mac instantaneamente).
Para gerar o arquivo oficial .dmg e instalar na sua pasta Aplicativos (ou mandar para alguém), rode:
npm run build:mac(O arquivo Firecast.dmg será gerado automaticamente dentro da pasta dist no seu projeto).
Aviso Importante: Ao utilizar o App do Mac, a sua TV continua se conectando a ele da exata mesma forma (via IP local na porta 8001), pois o aplicativo do Mac atua tanto como o Controle Remoto Visual quanto como o Host do Servidor!
Assim que você iniciar o servidor, ele vai exibir um endereço no seu terminal, algo parecido com: http://0.0.0.0:8001 (isso significa que ele está escutando na porta 8001 em toda a sua rede local).
Para que o sistema funcione perfeitamente, você usará dois dispositivos: a TV (exibidor) e o Celular/PC (controle remoto).
- No seu Fire TV, abra o navegador Amazon Silk.
- Digite o endereço de IP do seu computador na rede local seguido da porta 8001. Exemplo:
http://192.168.15.10:8001 - Você verá uma tela preta escrita "Toque nesta tela UMA VEZ para iniciar".
- Pelo controle remoto do Fire TV, clique no botão central (OK) na tela preta.
- O que acontece aqui? Esse clique é o Golpe de Mestre. Ele libera as políticas rigorosas de bloqueio de áudio (Autoplay) do navegador e joga a tela inteira para o Modo Tela Cheia Nativo, ocultando a barra de navegação superior do Silk para sempre.
- Pegue o seu celular ou abra uma nova aba no seu PC.
- Acesse o mesmo IP local, mas coloque
/adminno final. Exemplo:http://192.168.15.10:8001/admin - A interface de vidro temperado (Glassmorphism) será carregada e você já estará controlando a TV!
- Enviar URL: Cole qualquer link do YouTube e clique em "Enviar" para trocar o vídeo na TV. (Nota: Vídeos que foram bloqueados pela gravadora musical podem retornar "Vídeo Indisponível" na tela da TV devido a restrições de embed do Google).
- Expandir / Recolher: Usado para esticar o vídeo na TV ocupando 100% do espaço físico, ou encolhê-lo ao centro.
- Recarregar TV: Força o navegador da TV a recarregar a página suavemente.
- Hard Reset: Aperte apenas em caso de falha grave. Ele enviará um sinal para a TV destruir todo o histórico do navegador e cache dessa sessão antes de recarregar.
- Backend: Node.js, Express, Socket.io
- Frontend: HTML5, Vanilla CSS, JS
- API: YouTube IFrame Player API
- Arquitetura: WebSockets Bidirecionais em tempo real