Código aberto · Windows 10 e 11 · Sem hardware

Um Stream Decksem hardware.

O celular abre uma página web e controla o seu PC Windows pela rede local. Abra programas, jogos e sites, mande cada janela pro monitor que você escolher e feche tudo com um toque longo. Nada pra instalar no celular.

Seu celular

ONLINEEDITAR

Seu PC

Monitor 1● REC
Monitor 2● REC
  1. $ esperando um toque

Toque num botão do celular. Segure pra fechar o que ele abriu.

Jogar com os amigos exigia abrir o Discord num monitor e o jogo no outro, na mão, toda santa vez. O RigDeck nasceu daí e virou um painel de automação completo.

do README do projeto

Como funciona

Quatro camadas, cada uma cega pra vizinha

O frontend não sabe que o PowerShell existe. O executor nunca viu uma grade de botões. Cada camada só conhece a vizinha, então você testa cada peça sozinha.

  1. 01

    PWA no celular

    JavaScript puro, sem build

    Uma grade de botões em pastas, com o editor embutido. A página se recarrega sozinha quando o servidor ganha versão nova.

    fetch('/api/presets/gaming/run', { method: 'POST' })
  2. 02

    API Fastify

    Node.js + TypeScript

    Recebe o toque, acha o preset e entrega os passos pro executor. Schemas de rota e tipos de ponta a ponta.

    app.post('/api/presets/:id/run', run)
  3. 03

    Executor

    Uma decisão por passo

    Decide como cada passo roda: abrir um programa, mandar uma tecla, rodar um comando, tocar um som ou fechar o que já está aberto.

    { "type": "launch", "target": "steam://rungameid/730", "monitor": 1, "fullscreen": true }
  4. 04

    PowerShell + Win32

    Add-Type, sem módulo nativo

    A camada que conversa com o Windows. Lista monitores, move e redimensiona janelas, tira ícones de arquivos .exe, acha jogos da Steam e da Epic e manda teclas.

    place-window.ps1 -Hwnd 0x2A04F2 -Monitor 1 -Fullscreen
  5. →

Passos

Cinco tipos de passo. Misture num botão só.

Um preset é uma lista de passos. Um botão pode abrir Spotify, Brave e VS Code de uma vez, ou abrir um jogo no monitor 2 e trocar a cena do OBS.

Abre um .exe, um atalho, um protocolo como steam:// ou epicgames://, ou uma URL. Você escolhe o monitor e se vai em tela cheia.

{
  "type": "launch",
  "target": "steam://rungameid/730",
  "monitor": 1,
  "fullscreen": true
}

Recursos

Tudo o que um deck de mesa faz, e umas coisas que ele não faz

  • 01

    Pastas, igual ao de verdade

    Organize atalhos em pastas dentro de pastas, do jeito do Stream Deck da Elgato.

  • 02

    Segure pra fechar

    Segure um botão e o RigDeck fecha o que aquele preset abriu, rastreado por PID ou handle da janela. As outras cópias do mesmo app continuam abertas.

  • 03

    Um monitor por passo

    Cada passo escolhe o monitor e vai em tela cheia ou na posição e no tamanho que você definir.

  • 04

    Sites em janela própria

    URLs abrem com --app=, sem abas nem barra de endereço, e fecham uma a uma sem derrubar o navegador.

  • 05

    Acha seus programas

    Varre o Menu Iniciar, a Área de Trabalho e os manifestos da Steam e da Epic, e separa jogo de programa comum.

  • 06

    Mixer e soundboard

    Volume geral, do microfone e por app, equalizador de 2 bandas, efeito de voz e botões de som que disparam por tecla ou atalho do Discord.

  • 07

    OBS pelo celular

    Troque de cena, mute o microfone, comece e pare gravação ou live.

  • 08

    Navegue em pastas do disco

    Aponte um botão pra uma pasta e toque nos arquivos como numa grade, sem cadastrar um por um.

  • 09

    Estatísticas ao vivo

    CPU, RAM e disco livre na barra de status, mais o uso de 5 horas e semanal do Claude Code.

  • 10

    PWA instalável

    Adicione à tela inicial. Deitado, ele mostra até 4 botões por página numa bandeja deslizante.

  • 11

    Exportar e importar

    Faça backup de todos os presets num JSON só e leve pra outro PC.

  • 12

    Abre com o Windows, sem admin

    Um atalho na pasta Inicializar do Windows liga o servidor. Sem permissão de administrador.

Stack

Pequeno de propósito

Por que Fastify?

O primeiro backend rodava em Express. A versão pública foi pra Fastify e TypeScript por causa dos tipos de ponta a ponta e dos schemas de rota nativos. O resto continuou enxuto: sem ORM, sem injeção de dependência, nada que o projeto não precise.

BackendFastify + TypeScript, Node.js 20+
FrontendMódulos de JavaScript puro, sem framework, sem build
AutomaçãoPowerShell, com a API Win32 via Add-Type inline
Testesnode:test nativo, com tsx como loader
DadosUm arquivo JSON local, sem banco de dados

Começar

Rodando com quatro comandos

PowerShell
git clone https://github.com/obrenoalvim/rigdeck.gitcd rigdecknpm installnpm run build && npm startServer listening at http://0.0.0.0:4321
  1. 1

    Instale no PC

    Você precisa do Windows 10 ou 11 e do Node.js 20 ou mais novo. O PowerShell já vem no Windows.

  2. 2

    Abra no celular

    Conecte no mesmo Wi-Fi e abra o endereço do PC na porta 4321, tipo http://192.168.0.10:4321.

  3. 3

    Adicione à tela inicial

    O navegador instala como app. Deite o celular pro layout compacto.

Pra abrir junto com o Windows, sem admin:powershell -ExecutionPolicy Bypass -File scriptsinstall-startup-shortcut.ps1

Limites

O que ele não faz

  • Só Windows

    O controle de janelas roda na API Win32 via PowerShell. O celular pode ser qualquer um com navegador.

  • Só rede local

    Não tem login. Deixe a porta 4321 na sua rede de casa, ou coloque uma VPN ou um proxy reverso com autenticação na frente.

  • O rastreio fica na memória

    Reiniciou o servidor, o RigDeck esquece qual PID é de qual botão. O segurar pra fechar passa a usar o nome do processo.

Dúvidas

Perguntas que aparecem

Dá pra usar o celular como Stream Deck do PC?

Dá. Rode o RigDeck no PC Windows, abra o endereço dele no navegador do celular no mesmo Wi-Fi, e cada botão que você criar abre programas, jogos, sites, teclas, sons ou ações do OBS no PC. Sem hardware e sem app no celular.

Preciso de um Stream Deck ou de algum hardware?

Não. O RigDeck roda no navegador do celular e conversa com um servidor pequeno no seu PC pela rede local. Um tablet ou outro PC também servem.

Preciso instalar algum app no celular?

Não. O PC serve uma página web e o celular abre. Dá pra adicionar à tela inicial como PWA instalável.

Funciona no macOS ou no Linux?

O servidor roda só no Windows 10 e 11, porque o controle de janelas depende da API Win32 via PowerShell.

Dá pra expor na internet?

Não. O RigDeck não tem autenticação. Deixe na rede local, ou coloque uma VPN ou um proxy reverso com autenticação na frente da porta 4321.

Abrir junto com o Windows precisa de admin?

Não. Ele abre no login por um atalho na pasta Inicializar do Windows.

O painel está em português?

Sim. Os textos do próprio painel estão em português. O README, o código e este site também têm versão em inglês.

Segurar pra fechar derruba meu outro Discord?

Não. O RigDeck guarda o PID ou o handle da janela que cada preset abriu e fecha só esses. Depois de reiniciar o servidor, ele passa a usar o nome do processo.

Sua mesa já tem o controle

É o celular do lado do teclado. Grátis e com licença MIT.