Tirando o Máximo Proveito dos Logs de Treino com LiftShift
Se você vai à academia e registra cuidadosamente cada série no Hevy, Strong ou Lyfta, provavelmente notou uma coisa. Rastreadores móveis são ótimos para coletar dados brutos, mas quase nunca ajudam você a dar sentido a eles. Na melhor das hipóteses, o app mostra um gráfico de um exercício ao longo de um mês e o parabeniza por um novo máximo de uma repetição. O verdadeiro problema é que é difícil ver quais grupos musculares você está subtreinando consistentemente, onde você atingiu um platô genuíno e precisa mudar sua abordagem, e o que é apenas fadiga normal da terceira série.
Recentemente descobri o projeto de código aberto LiftShift. É uma ferramenta web para análise profunda de logs de treino que roda diretamente no navegador e não requer registro.
O que o projeto pode fazer
A ideia central é simples: você alimenta o app com sua exportação ou conecta sua conta, e ele organiza seus treinos sob uma perspectiva de periodização esportiva.


Aqui estão as coisas que imediatamente se destacam ao explorar o dashboard:
- Mapa de calor muscular. Um modelo corporal interativo mostra a carga de volume em cada grupo muscular. Você pode clicar em um músculo específico e ver os exercícios que produziram esse estímulo. O algoritmo calcula zonas de volume (limiares MEV e MRV) ajustados para a experiência de treino e atribui uma pontuação de hipertrofia de 0 a 100.
- Detecção de platôs. Em vez de uma simples tendência de peso, a ferramenta atribui statuses claros aos exercícios: crescimento, platô ou declínio. O sistema distingue entre platôs sem saída (quando peso e repetições completamente estagnaram) e flutuações em onda, então sugere uma solução: adicionar uma repetição, reduzir o peso de trabalho durante uma semana de deload, ou mudar a faixa de repetições.
- Detalhamento de cada série. Você pode abrir qualquer sessão passada e ver as avaliações das séries. O sistema identifica fadiga normal, saltos de peso muito abruptos, drop sets bem executados, ou séries até a falha (AMRAP). Cada série recebe uma badge e um conselho direto para seu próximo treino.
- Mesclagem de dados de diferentes apps. Se você usou o Strong por anos e depois mudou para o Hevy, seu histórico geralmente se quebra. O projeto pode corresponder nomes diferentes para os mesmos exercícios, remover duplicatas e costurar tudo em uma única linha do tempo.
- Exportação para redes neurais. Se os gráficos integrados não forem suficientes, os dados são exportados em um formato estruturado para prompts ao ChatGPT ou Claude. Existem módulos prontos: auditoria de volume junk, verificação de equilíbrio lateral, ou avaliação de carga articular.
- Mapa de calor estilo GitHub. Você pode ver claramente sequências, semanas perdidas e consistência de todo o ano.


Por baixo dos panos
A arquitetura do projeto é focada em privacidade. Todos os cálculos, parsing de CSV e renderização de gráficos acontecem no lado do cliente.


O frontend é construído em uma stack moderna: React 19, TypeScript, Vite, Tailwind CSS e a biblioteca Recharts para visualização de dados. Um pequeno backend em Node.js com Express e Puppeteer é usado exclusivamente como proxy para chamadas de API aos rastreadores como Hevy e Lyfta, onde restrições de CORS do navegador ou autorização são necessárias. Logs de treino não são armazenados no servidor.
Para trabalhar com o Strong, importações de arquivos CSV são suportadas com delimitadores de ponto e vírgula, aspas e sufixos de unidades de peso nos cabeçalhos.
Como rodar localmente
Se você quiser fazer deploy do projeto na sua máquina ou escrever um parser personalizado, são apenas um par de comandos. Você vai precisar do Node.js versão 22 ou mais recente.
git clone https://github.com/aree6/LiftShift.git
cd LiftShift
npm install
npm run dev
Após a inicialização, o servidor local vai abrir na porta padrão do Vite.

Se você estiver usando a versão pública no site do projeto, basta selecionar sua plataforma, fazer upload de um CSV ou colar sua chave de API, especificar suas unidades (kg ou libras), e ir para o dashboard.
Um pequeno detalhe: ao exportar do Hevy, o app às vezes reclama sobre formatos de data. Isso acontece devido à locale não inglesa no app de origem. Basta mudar temporariamente o idioma de exportação para inglês:

Para quem o projeto é
O LiftShift preenche perfeitamente a lacuna entre simples cadernos de academia e planilhas complexas de treino em Excel. Se você é preguiçoso demais para calcular manualmente a tonelagem por grupo muscular e caçar desequilíbrios, o cliente web faz isso em um par de segundos.
O projeto é distribuído sob a licença AGPL-3.0. A base de código é limpa, escrita em TypeScript estrito, então se você quiser adicionar suporte para seu rastreador de fitness favorito ou implementar novas métricas de periodização, contribuir aqui é bem agradável.
Projetos relacionados