Skip to content
magicoven-techPublic

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

4 Commits

Folders and files

Repository files navigation

Firecast

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.

Funcionalidades

  • 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.

Instalação

Pré-requisitos

  • Ter o Node.js instalado na sua máquina (versão 18+ recomendada).

Passo a passo

  1. Clone este repositório para a sua máquina:
git clone git@github.com:magicoven-tech/firecast.git
cd firecast
  1. Instale as dependências:
npm install

Como Executar

Ambiente de Desenvolvimento (Auto-reload ativado)

Se você for modificar o código e quiser que o servidor reinicie sozinho a cada salvamento, use:

npm run dev

Ambiente de Produção

Para rodar o servidor padrão sem o sistema de recarregamento (Nodemon):

npm start

🍏 Aplicativo Nativo para Mac (Desktop)

Transformamos 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.

Como rodar localmente (Modo Dev)

npm run start:mac

(Isso inicia o servidor e abre a janela do aplicativo no seu Mac instantaneamente).

Como gerar o instalável (Build DMG)

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!


Usabilidade e Configuração na TV

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).

Passo 1: Preparando a TV (O Exibidor)

  1. No seu Fire TV, abra o navegador Amazon Silk.
  2. Digite o endereço de IP do seu computador na rede local seguido da porta 8001. Exemplo: http://192.168.15.10:8001
  3. Você verá uma tela preta escrita "Toque nesta tela UMA VEZ para iniciar".
  4. 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.

Passo 2: O Painel de Controle (O Admin)

  1. Pegue o seu celular ou abra uma nova aba no seu PC.
  2. Acesse o mesmo IP local, mas coloque /admin no final. Exemplo: http://192.168.15.10:8001/admin
  3. A interface de vidro temperado (Glassmorphism) será carregada e você já estará controlando a TV!

Comandos Disponíveis no Painel:

  • 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.

Tecnologias Utilizadas

  • Backend: Node.js, Express, Socket.io
  • Frontend: HTML5, Vanilla CSS, JS
  • API: YouTube IFrame Player API
  • Arquitetura: WebSockets Bidirecionais em tempo real

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages