Sobre o projeto

openGym é um rastreador de academia e peso corporal auto-hospedado que coloca você no controle dos seus dados de treino. Ele roda via Docker Compose no seu próprio servidor, sem assinaturas, anúncios ou contas de terceiros. O aplicativo é instalável como PWA e também está disponível como APK autônomo para Android. Os principais recursos incluem: - **Planejamento de treinos**: rotinas semanais, uma biblioteca de 1.324 exercícios com demonstrações animadas e quatro planos iniciais (Push/Pull/Legs, Upper/Lower, Full Body, 5×5). - **Treinos guiados**: o aplicativo sabe o dia, pré-preenche os pesos da última vez, inclui temporizadores de descanso, detecção de PR e acompanhamento de peso por exercício. - **Registro avançado**: superséries, séries de aquecimento, exercícios cronometrados, avaliação de esforço RIR/RPE, cálculo de anilhas para trabalho com barra e progressão de exercícios com peso corporal. - **Mapa muscular**: visualize equilíbrio, fadiga e força em um diagrama corporal de frente e de costas. - **Importação/exportação de dados**: importe histórico do FitNotes, Strong, Hevy (CSV ou chave de API) e Apple Health; exporte como JSON. - **Privacidade**: login por passkey (WebAuthn), sem telemetria, modo convidado e todos os dados armazenados como arquivos JSON simples em uma pasta que você controla. - **IA opcional**: um servidor MCP para consultas somente leitura e um coach de IA que projeta rotinas e propõe mudanças, rodando no seu servidor com a chave do seu provedor. - **Painel de administração**: opcional, com registro de atividades, gerenciamento de usuários e cadastro somente por convite. - **Localização**: 14 idiomas para a interface, 12 para as instruções dos exercícios. A auto-hospedagem é simples: clone, copie `.env.example` e execute `docker compose up -d`. O aplicativo é construído com React 19, Node e nginx, sem necessidade de servidor de banco de dados. O projeto é licenciado sob AGPL-3.0, e a mídia dos exercícios é baixada da fonte upstream com ressalvas de licenciamento observadas no NOTICE.md.