Back to portfolio
ORV Music — A Music Library for Telegram

ORV Music — A Music Library for Telegram

For a lot of people in Iran, Telegram is where music arrives, and it ends up buried in chats, channels and Saved Messages. With ORV Music you forward a song to @OrvMusicBot and it lands in your library with the title, artist and cover from Telegram's own metadata; the audio stays on Telegram's servers and is streamed from there. The library opens as a Telegram Mini App, in a normal browser, as an installable web app or as an Android app, with playlists, folders, likes, a queue and offline downloads. The bot also takes a song name, a YouTube, Instagram, TikTok, SoundCloud or X link, or a voice note of a song playing nearby, and sends back the track. On top of your own songs, the home screen builds daily mixes, a weekly playlist and a release radar from what you play, like and skip.

// Architecture

One FastAPI process serves the API and the static single-page player and runs the python-telegram-bot poller as a background task, with SQLite in WAL mode for users, tracks, playlists and play history. Inside Telegram, requests are authenticated by checking the HMAC on the Mini App's initData; outside it, by a signed token the bot hands out, with Google sign-in as an optional second way in. Library audio is proxied from the Bot API with HTTP Range support so seeking works. Catalogue data comes from Deezer, lyrics from LRCLIB, song recognition from Shazam, and audio fetched for discovery is cached on disk under a size cap.

// Key capabilities

Your files stay on Telegram

Only metadata is stored; the song is streamed from Telegram on demand, and files over the Bot API's 20 MB limit are refused with a clear message instead of failing silently.

One library, every screen

The same library works as a Mini App, in the browser, as a PWA and as an Android APK; a new device is paired by tapping a one-time link in the bot.

Discovery from your own listening

Daily mixes, a weekly playlist and a release radar are built from play history, likes and followed artists; disliking a song keeps that artist out of future mixes.

A real player

Synced lyrics, an equaliser with presets and loudness normalisation, a sleep timer, shuffle and repeat, offline downloads in the browser, and inline mode to share a library song into any chat.

// Technology stack

  • Python / FastAPI
  • python-telegram-bot
  • SQLite
  • Vanilla JS PWA
  • Deezer API

// Inside the project

ORV Music — A Music Library for Telegram — Inside the project 1ORV Music — A Music Library for Telegram — Inside the project 2ORV Music — A Music Library for Telegram — Inside the project 3

// Next step

Need something like ORV Music — A Music Library for Telegram?

Tell us what you're building. We'll reply with how we'd approach it, a rough timeline and the first step.

Start a similar project

Orv Team (Orv) is a software development studio. We design and build web, mobile and AI products, and support them after launch.

// Contact
Have a project in mind?|

Tell us what you're building, and we'll get back to you.

orv:~$new-project --like orv-music
or reach us directly
Telegram@OrvTeam
GitHub@ItsOrv
Email
orv© 2026