projeto

Compterm

Aplicação para compartilhar sessões de terminal com foco em uso real, baixa banda e configuração pragmática.

0 artigos relacionados GitHub

Criei o Compterm para resolver um problema concreto do Grupo de Estudos de Go: mostrar o terminal ao vivo, durante uma aula, sem depender de compartilhamento de tela. Compartilhar tela come muita banda, exige software específico do lado de quem assiste e quase sempre fica pesado para quem está em conexão ruim.

A solução é mais simples do que parece. O Compterm transmite só o terminal pela rede e o cliente é o navegador, via WebSocket. Quem assiste não instala nada. Quem apresenta roda um binário.

Isso acabou cobrindo casos que apareceram depois: pareamento remoto em conexões fracas, uso na BBS Atomic Blast e demonstrações em geral. Suporte a BBS não é nostalgia decorativa, é requisito de projeto – funcionar bem em banda limitada e latência imprevisível força decisões de design que a maioria dos projetos similares ignora.

A configuração segue o padrão UNIX: argumento de linha de comando, variável de ambiente e, opcionalmente, um init.lua em ~/.config/compterm/. A precedência é a esperada – linha de comando vence env vars, e Lua pode sobrescrever qualquer um dos dois. Não inventei mecanismo novo.

Build com make. Em modo desenvolvimento (make dev) os assets ficam fora do binário; em produção, embutidos.

O repositório tem a lista completa de flags, variáveis de ambiente e exemplos.