Skip to main content

an alternative frontend to ultimate-guitar.com

Project description

freetar - an open source alternative front-end to ultimate-guitar.com

This is like Invidious but only for Ultimate Guitar.

Instances

Features

  • no ads, popups, AI, blockchain. Just a simple design
  • search for tabs and view them
  • save your favorite chords as favs (everything is stored in session storage (not send to the server), no account needed)
  • dark mode
  • auto scroll
  • useful for printing chords
  • show chords

How to use it

After successful installation, there is an executable called freetar in the PATH. Execute it without parameters and it listens on 0.0.0.0:22000. You can specify a custom listen host or port by using environment variables.

Environment variables

  • FREETAR_HOST
  • FREETAR_PORT
  • FREETAR_CACHE_TIMEOUT (how log should tabs be cached in memory, reduces the requests to Ultimate Guitar, defaults to 0 (inifnity))

PyPi
Package: https://pypi.org/project/freetar/

pip install freetar

Docker
Image: https://hub.docker.com/r/kmille2/freetar
Port: 22000

sudo docker pull kmille2/freetar
sudo docker run -p 127.0.0.1:22000:22000 kmille2/freetar

Or use Docker compose:

sudo docker compose up -d

Set a custom bind port with the environment variable FREETAR_PORT

You can also build and run the local repository instead of pulling from Docker Hub:

docker compose build
docker compose up -d

Dev environment

You need uv. Then:

FREETAR_CACHE_TIMEOUT=1 uv run freetar/backend.py
vim freetar/*.py
Visit localhost:22000 in browser

# static files: freetar/static/*
# html templates: freetar/templates/*
FREETAR_CACHE_TIMEOUT=1 uv run freetar

Future work

  • show chords
  • improve UX on mobile devices
  • on smartphones: prevent lock screen
  • package it as PGA (Progressive Web App)
  • share chords (qr code)? (done by #12 with export/import functionality)
  • save favs encrypted server side?
  • Browser Extension like Invidious Redirection (done)
  • show qr code to quickly share a tab?

Contributions

Feel free to contribute, but please create an issue before with a proposal of the feature. I don't want freetar to be bloated (neither UI nor functionality).

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

freetar-0.19.0.tar.gz (115.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

freetar-0.19.0-py3-none-any.whl (117.1 kB view details)

Uploaded Python 3

File details

Details for the file freetar-0.19.0.tar.gz.

File metadata

  • Download URL: freetar-0.19.0.tar.gz
  • Upload date:
  • Size: 115.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for freetar-0.19.0.tar.gz
Algorithm Hash digest
SHA256 8623c0785f6f9d4fddae294edb7e52bf084cf276fdd9fb9de21c6a4344143a7b
MD5 8e7f43a5f03a2dbc800d14831b1abec6
BLAKE2b-256 0d4f1eb03fa366097f53227e5edecff9d17ef288752d0a4d49ed474d3a0fcf0a

See more details on using hashes here.

File details

Details for the file freetar-0.19.0-py3-none-any.whl.

File metadata

  • Download URL: freetar-0.19.0-py3-none-any.whl
  • Upload date:
  • Size: 117.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for freetar-0.19.0-py3-none-any.whl
Algorithm Hash digest
SHA256 50b7c73a1d6135b4eef4f68443fde041fa92f88a3726fb2bcb3131a7a4ad8256
MD5 2a8f88cd4b8038a3298b5cb911f84ace
BLAKE2b-256 01c843797b2f355b2ca644017f9cd07dd98b41d3c215efc97ee7f8a9489992a2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page