Your music companion on Telegram ๐ต
Features โข
Installation โข
Usage โข
Deployment
Banger Link is a Telegram bot that bridges the gap between different music streaming services. Share a song link from Apple Music or Spotify, and the bot will find the corresponding YouTube video and let you download the audio.
Perfect for group chats where friends use different music platforms!
- ๐ Convert Apple Music and Spotify links to YouTube
- โฌ๏ธ Download audio directly in your chat
- ๐๐ Like/Dislike tracks to rate the best bangers
- ๐ Track how many times a song has been shared
- ๐๏ธ Persistent storage of shared songs
- ๐ Fast and responsive with modern async code
- ๐ Privacy-focused (no data collection)
- Python 3.8 or higher
- A Telegram bot token
- A YouTube Data API key
-
Clone the repository
git clone https://github.com/luisg0nc/banger-link.git cd banger-link -
Create and activate a virtual environment
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install dependencies
pip install -r requirements.txt
-
Configure environment variables Copy the example environment file and update it with your credentials:
cp .env.example .env # Edit .env with your API keys
python -m banger_linkJust send a link to a song from Apple Music or Spotify, and the bot will handle the rest!
- Share a music link in any chat where the bot is added
- Use the buttons to like/dislike tracks
- Download the audio with a single click
-
Build and run with Docker Compose:
docker-compose up -d --build
-
Or build manually:
docker build -t banger-link . docker run -d --env-file .env banger-link
For production deployment, consider using:
- Heroku
- Railway
- PythonAnywhere
- A VPS with Docker
Contributions are welcome! Please read our contributing guidelines for details.
This project is licensed under the MIT License - see the LICENSE file for details.
- python-telegram-bot - The best Python library for Telegram bots
- pytube - For YouTube video downloads
- TinyDB - For simple JSON-based storage
Made with โค๏ธ by Luis Gonรงalves
