Sobre o projeto

# Weylus Weylus é um aplicativo de código aberto que transforma seu tablet ou smartphone em um tablet gráfico ou tela de toque para o seu computador. Ele funciona em todos os principais sistemas operacionais (Linux, macOS, Windows) e requer apenas um navegador moderno no lado do tablet (Firefox 80+, iOS/iPadOS 13+). ## Principais Recursos - **Controle do Mouse**: Use seu tablet para controlar o cursor do mouse do computador - **Espelhamento de Tela**: Espelhe a tela do computador no tablet em tempo real - **Entrada de Teclado**: Conecte um teclado Bluetooth físico ao tablet e digite diretamente - **Aceleração de Hardware**: Utiliza codificação de vídeo acelerada por GPU (VAAPI no Linux, NVENC/MediaFoundation no Windows, VideoToolbox no macOS) - **Suporte a Caneta (Linux)**: Sensibilidade total de pressão e inclinação para entrada de caneta - **Multi-toque (Linux)**: Suporta gestos de multi-toque em software compatível, como Krita - **Captura de Janela (Linux)**: Selecione janelas específicas para espelhar e desenhar apenas nelas - **Segunda Tela (Linux)**: Use seu tablet como um monitor virtual adicional ## Instalação Baixe a versão mais recente na [página de releases](https://github.com/H-M-H/Weylus/releases) para o seu sistema operacional. Nenhuma instalação é necessária no tablet—basta abrir um navegador. Pacotes AUR estão disponíveis para usuários de Arch Linux: - A partir do código-fonte: `weylus` - Binário pré-compilado: `weylus-bin` ## Início Rápido 1. Inicie o Weylus, defina um código de acesso (recomendado) e pressione Iniciar 2. Abra a URL exibida (por exemplo, `http://<endereço-do-computador>:1701`) no seu tablet 3. Permita o acesso ao firewall para as portas TCP 1701 (servidor web) e 9001 (websocket) ## Notas Específicas por Plataforma ### Linux - Requer `uinput` para suporte a caneta e multi-toque. Siga as instruções de configuração no README para criar uma regra udev. - O suporte a Wayland é experimental; requer `pipewire`, `xdg-desktop-portal` e um backend de portal (GTK para GNOME, KDE para KDE). - Aceleração de hardware via VAAPI; pode ser necessário definir `WEYLUS_VAAPI_DEVICE` para um nó de renderização (por exemplo, `/dev/dri/renderD129`). - Pode criar displays virtuais usando o driver `xf86-video-intel` da Intel para a funcionalidade de segunda tela. ### macOS - Usa VideoToolbox para aceleração de hardware, embora a qualidade possa ser inferior à codificação por software. ### Windows - Suporta NVENC e MediaFoundation para codificação acelerada por hardware. ## Compilação a partir do Código-Fonte Requer Rust, TypeScript, make, git, compilador C, nasm e bash. No Linux, dependências adicionais são necessárias (veja o README para a lista completa). O script de compilação compila ffmpeg e libx264 por padrão; você pode usar bibliotecas do sistema com `--features ffmpeg-system`. Builds Docker também são suportados via a imagem `hhmhh/weylus_build`. ## Como Funciona Weylus usa PointerEvents do navegador para capturar entrada de caneta, toque e mouse do tablet. Esses eventos são enviados via WebSocket para o servidor, que os processa usando um backend genérico (somente mouse) ou, no Linux, o backend uinput para suporte completo a caneta/multi-toque. O espelhamento de tela usa ffmpeg para codificar a área de trabalho (ou janelas selecionadas) em um fluxo de vídeo H.264, que é reproduzido no navegador via Media Source Extensions. ## Destaques do FAQ - **Problemas de conexão?** Certifique-se de que ambas as portas TCP (1701 e 9001) estejam abertas no firewall. - **Sem captura de janela no macOS/Windows?** Esse recurso é exclusivo do Linux devido à integração com X11. - **Firefox para Android não funciona?** Use um navegador diferente ou verifique a configuração de rede. - **Problemas com Chrome no iPad?** O Chrome carece de alguns recursos de streaming de vídeo no iPadOS; use Safari ou Firefox. - **Sem WiFi?** Use tethering USB ou crie um hotspot a partir do tablet. Usuários de Android podem usar o encaminhamento de porta ADB para conectar via `http://127.0.0.1:1701`. ## Nota de Segurança Weylus não possui criptografia embutida para minimizar a latência. Execute-o apenas em redes confiáveis. Para redes não confiáveis, configure um proxy TLS (por exemplo, com hitch) conforme descrito no README. Para detalhes completos, incluindo solução de problemas e configuração avançada, veja o [README oficial](https://github.com/H-M-H/Weylus).