You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
テクニカル諏訪子 a78b7e4a5c Merge branch 'main' of 1 week ago
.vscode Allow instances to set default settings (#116) 3 months ago
api Merge branch 'main' of 1 week ago
data Initial categories support (#35) 8 months ago
pages Proxy fallback videos 3 months ago
proxy Merge branch 'main' of 1 week ago
static Merge branch 'main' of 1 week ago
utils Merge branch 'main' of 1 week ago
views Merge branch 'main' of 1 week ago
.gitignore test ci 3 months ago
Dockerfile Use full image name 3 months ago
LICENSE Initial commit 2 years ago Merge branch 'main' of 1 week ago
config.example.yml Merge branch 'main' of 1 week ago
docker-compose.yml Integrate stream-proxy-ng (closes #117) 7 months ago
go.mod Update dependencies 3 weeks ago
go.sum Update dependencies 3 weeks ago
instances.json Merge branch 'main' of 1 week ago
main.go Fix video playback 2 months ago


An alternative frontend for LBRY/Odysee. Inspired by Invidious and Libreddit.

License: AGPLv3+ Matrix

Table of Contents


  • Lightweight
  • No ads
  • No tracking
  • No crypto garbage


🎞️ Video 📺 Channel 📰 Article


Comparing Librarian to Odysee.


Tested using Google PageSpeed Insights.

Librarian Odysee
Performance 99 27
Request count 17 470
Resource Size 702 KiB 2,457 KiB
Time to Interactive 0.9s 18.4s



Odysee Privacy Grade

Odysee has admitted to using browser fingerprinting for ads and loads multiple ads, trackers, and an annoying cookie banner.

We and our partners process data to provide: Use precise geolocation data. Actively scan device characteristics for identification. Store and/or access information on a device. Personalised ads and content, ad and content measurement, audience insights and product development.

They also use your data for these purposes and you cannot opt-out of it.

  • Ensure security, prevent fraud, and debug
  • Technically deliver ads or content
  • Match and combine offline data sources
  • Link different devices
  • Receive and use automatically-sent device characteristics for identification

See what trackers and cookies they use:


Librarian itself does not collect any data but instance operators may collect data. You can view a "privacy nutrition label" by clicking on the "Privacy" link at the bottom.


Open an issue to have your instance listed here!

Instances with a star don't collect data, don't use Cloudflare, support livestreams, and proxy videos.


URL Country Provider Privacy Livestreams Notes 🇯🇵 JP GMOグローバルサイン Data not collected Edited source code 🇩🇪 DE Hetzner ⚠️ Data collected 🇳🇱 NL BuyVM Data not collected 🇨🇦 CA OVH Data not collected 🇺🇸 US OVHCloud Data not collected Edited theme 🇺🇸 US Hetzner Data not collected 🇷🇺 RU Data not collected 🇸🇰 SK STARK INDUSTRIES Data not collected 🇧🇷 BR WSNET TELECOM Data not collected


URL Privacy Live streams Notes
librarian.esmail5pdn24shtvieloeedh7ehz3nrwcdivnfhfcedl7gf4kwddhkqd.onion Data not collected Onion of
lbry.vernccvbvyi5qhfzyqengccj7lkove6bjot2xhh5kajhwvidqafczrad.onion Data not collected Onion of Edited theme
5znbzx2xcymhddzekfjib3isgqq4ilcyxa2bsq6vqmnvbtgu4f776lqd.onion Data not collected Onion of
bxewpsswttslepw27w2hhxhlizwm7l7y54x3jw5cfrb64hb6lgc557ad.onion Data not collected Onion of


Use LibRedirect to automatically redirect Odysee links to Librarian! This needs to be enabled in settings.

GreaseMonkey script

There is a script to redirect Odysee links to Librarian.


Librarian can run on any platform Go compiles on, memory usage varies on instance usage due to caching.

Make sure to join our Matrix chat to get notified on updates for Odysee API changes.

It is strongly recommended to use Caddy as your reverse proxy especially if you have livestreams or video proxy enabled. Caddy is simple to configure, automatically manages your TLS certificates, and provides better performance with support for HTTP/2 and /3 (allow UDP port 443 in your firewall to use HTTP/3).

Install Docker and docker-compose, then clone this repository.

git clone
cd librarian

Edit the config file using your preferred editor.

mkdir data
cp config.example.yml data/config.yml
nvim data/config.yml

You can also edit docker-compose.yml if you want to change ports or build from source.

You can now run Librarian. 🎉

sudo docker-compose up -d

Automatic updates

Watchtower can automatically update your Docker containers.

Create a new docker-compose.yml file or add the watchtower section to your existing docker-compose.yml file.

version: "3"
    image: containrrr/watchtower
      - /var/run/docker.sock:/var/run/docker.sock

Build from source

For more detailed instructions, follow the guide.


  • Go v1.16 or later

Clone the repository and cd into it.

git clone
cd librarian

Build Librarian.

go build .

To include version information use:

go build -ldflags "-X$(date '+%Y-%m-%d')-$(git rev-list --abbrev-commit -1 HEAD)"

Edit the config file using your preferred editor.

cp config.example.yml config.yml
nvim config.yml

You can now run Librarian. 🎉


go install

You can install Librarian using Go.

go install

Edit the config file using your preferred editor.

cp config.example.yml config.yml
nvim config.yml

You can now run Librarian. 🎉

librarian # If GOBIN is in your PATH
$HOME/go/bin/librarian # If GOBIN is not in PATH


See config.example.yml for configuration.


Pull requests are welcome! If you have any questions or bug reports, open an issue.


This software is released under the AGPL-3.0 license. If you make any modifications to the code and distribute it (including use on a network server), you must publicly distribute your changes and release them under the AGPL-3.0.