Freetar, um front-end alternativo para ultimate-guitar.com
(github.com/kmille)- Freetar é um front-end alternativo de código aberto para o Ultimate Guitar, aplicando às tabs e cifras o mesmo papel que o Invidious oferece ao YouTube
- Oferece um design simples sem anúncios, pop-ups, IA ou blockchain, com foco em pesquisar e visualizar tabs
- As cifras favoritas são salvas no session storage sem conta, não são enviadas ao servidor, e há modo escuro, rolagem automática, visualização de cifras para impressão e prevenção de desligamento da tela com base na WakeLock API
- Após a instalação, ao executar o binário
freetarsem parâmetros, ele roda em0.0.0.0:22000, e o comportamento pode ser ajustado com as variáveis de ambienteFREETAR_HOST,FREETAR_PORTeFREETAR_CACHE_TIMEOUT - Os trabalhos futuros incluem melhoria de UX no mobile, empacotamento como PWA, salvamento de favoritos com criptografia no lado do servidor e exibição de QR code para compartilhar tabs, sendo recomendado sugerir uma issue antes de adicionar recursos
O que o Freetar faz
- Freetar é um front-end alternativo de código aberto para o Ultimate Guitar
- Seu papel é parecido com o do Invidious, mas o alvo não é o YouTube, e sim o Ultimate Guitar
- As instâncias públicas são as seguintes
Recursos oferecidos
- Oferece um design simples sem anúncios, pop-ups, IA ou blockchain
- É possível pesquisar e visualizar tabs
- É possível salvar cifras favoritas em favs
- Todos os dados são armazenados no session storage
- Não são enviados ao servidor
- Não é necessário ter conta
- Suporta modo escuro
- Suporta rolagem automática
- É útil para imprimir cifras
- Permite exibir cifras
- Usa a WakeLock API para evitar que a tela desligue
Instalação e execução
- Se a instalação for bem-sucedida, o executável
freetarserá criado noPATH - Ao executar sem parâmetros, ele fica escutando em
0.0.0.0:22000 - É possível alterar host e porta por variáveis de ambiente
FREETAR_HOSTFREETAR_PORTFREETAR_CACHE_TIMEOUT: define por quanto tempo as tabs ficam em cache na memória para reduzir as requisições ao Ultimate Guitar- O valor padrão é
0 - O padrão funciona como cache infinito
- O valor padrão é
Forma de distribuição
- Pode ser instalado como pacote PyPI
- Package: https://pypi.org/project/freetar/
- Comando de instalação:
pip install freetar
- Pode ser executado como imagem Docker
- Image: https://hub.docker.com/r/kmille2/freetar
- A porta padrão é
22000 - Um exemplo de execução é
sudo docker run -p 127.0.0.1:22000:22000 kmille2/freetar
- Também é possível usar Docker Compose
sudo docker compose up -d- A porta de bind pode ser alterada com a variável de ambiente
FREETAR_PORT
- Em vez de baixar a imagem do Docker Hub, também é possível compilar o repositório localmente e executar
docker compose builddocker compose up -d
Ambiente de desenvolvimento e trabalhos futuros
- O ambiente de desenvolvimento requer uv
- Exemplos de execução em desenvolvimento são
FREETAR_CACHE_TIMEOUT=1 uv run freetar/backend.pyouFREETAR_CACHE_TIMEOUT=1 uv run freetar - Os arquivos estáticos ficam em
freetar/static/*, e os templates HTML emfreetar/templates/* - Os trabalhos futuros incluem o seguinte
- Melhoria de UX em dispositivos móveis
- Empacotamento como Progressive Web App, descrito como PGA
- Armazenamento de favs com criptografia no lado do servidor
- Exibição de QR code para compartilhar tabs rapidamente
- Também há itens já concluídos
- O compartilhamento de cifras por QR code foi concluído com a funcionalidade de export/import da issue #12
- Extensões de navegador como o Invidious Redirection foram concluídas na issue da extensão de navegador LibRedirect
- Contribuições são possíveis, mas é recomendado primeiro abrir uma issue de sugestão de recurso
- Não há interesse em que a UI ou os recursos fiquem inchados
1 comentários
Comentários do Hacker News
Bem legal, e já existem várias ferramentas relacionadas. Como imagino que vão restringir ainda mais o acesso às tabs no futuro, também fiz uma ferramenta para raspar e salvar tabs
Sou membro vitalício do UG Pro, mas eles continuam ultrapassando os limites para monetizar mais. Infelizmente, esse é um campo com pouquíssimo espaço para open source, porque as tabs geralmente têm licença das editoras ou pelo menos dos artistas. Oliver Tree foi um caso estranho em que, apesar de as músicas dele terem algo como 4 acordes por faixa, em certo momento mandou derrubar a maioria das tabs. Considerando que qualquer pessoa pode ouvir uma música e escrever uma tab, o estado atual dessa área é bem insatisfatório
Fico curioso se alguém já tentou argumentar fair use para fins educacionais. Tabs parecem mais instruções de como tocar melhor uma música do que uma obra criativa em si, e como não têm informação rítmica, normalmente é impossível reconstruir a música real só a partir da tab. Acordes têm ainda menos informação, então uma cifra de violão pode nem se parecer com as notas realmente tocadas na gravação
Acho que vão continuar empurrando até o ponto em que o usuário fique só minimamente satisfeito, ou até um pouco menos
Uso o Ultimate Guitar desde o começo dos anos 2000, e algumas tabs que eu criei ainda estão lá. Visitar o site hoje em dia é realmente trágico. O site está um desastre, então com certeza pretendo usar essa ferramenta
A internet era bonita naquela época porque havia muitos cantos em que monetizar não era fácil ou nem era um objetivo, então as coisas podiam simplesmente existir. Agora não é mais assim
Também tenho boas lembranças do canal de IRC em que a gente ficava. Acho que devo ter uma ou duas tabs minhas publicadas no site. Toda vez que volto lá de vez em quando nos últimos anos, acabo me afastando de novo
Aleluia. Como comprei o app antigamente e herdei uma assinatura vitalícia, consigo escapar de parte do marketing, mas muitas vezes tocar violão fica mais difícil por causa da UI insana
Lembro do OLGA, o On-Line Guitar Archive. Quando eu era adolescente e estava aprendendo guitarra nos anos 1990, o OLGA tinha tabs em texto feitas por usuários em quantidade suficiente para eu aprender de graça qualquer música que eu já tivesse ouvido ou quisesse tocar
Excelente. Estou aprendendo guitarra há cerca de 15 meses e odiava os anúncios e pop-ups da maioria dos sites de guitarra. Isso aqui é perfeito porque faz o que precisa e não desperdiça tempo, com uma interface simples
Como não usa jQuery, talvez não combine com as convenções do código atual, mas eu gostaria que fosse integrado e publicado para ter ordenação. Mais uma vez, obrigado por ter tido a ideia e construído isso
Excelente. O site original ficou bastante hostil aos usuários ao longo dos anos, e isso é ainda mais difícil de aceitar considerando que a maior parte do conteúdo que define a identidade do site foi contribuída pelos usuários
Tem duas coisas. Primeiro, isso é realmente excelente. Procurei as tabs que eu tinha adicionado ao site e elas aparecem muito bem. Mais importante ainda, ele as mostra em um formato bom para impressão
Segundo, se você toca ou se interessa por violão clássico, também vale a pena conferir a joia da internet que é https://www.classtab.org/
Fiz um web app parecido há alguns anos. Acho que compete bem com essa ferramenta. Também tem realce de sintaxe :)
https://tabviewer.app/
Sobre o comentário irmão e a explicação “clique para ver o repositório”: a menos que agora
"license":"ISC"no package.json seja oficialmente reconhecido como uma licença com validade legal, o repositório não tem licençaComprei um plano Pro de 1 ano e pedi reembolso 24 horas depois, mesmo saindo no prejuízo. Foi porque assinei usando um código promocional sem reembolso
O app simplesmente não funciona direito. A playlist não carrega de fato a próxima música quando você espera, demora demais para abrir uma partitura, e para cada música da playlist você precisa voltar para “chords” de novo, o que aumenta ainda mais o carregamento. Se eles só parassem de carregar coisas de que eu não preciso, já economizaria um tempo enorme. Além disso, nem dá para sincronizar músicas manualmente para usar offline; depois de favoritar, você fica refém do cronograma de sincronização deles
Fiz uma ferramenta de linha de comando para isso: https://codeberg.org/ltworf/ultimateultimateguitar