{"id":26424361,"url":"https://github.com/Burhanverse/Tunified","last_synced_at":"2025-03-18T03:02:46.472Z","repository":{"id":247562932,"uuid":"826188250","full_name":"Burhanverse/Tunified","owner":"Burhanverse","description":"A Telegram bot that fetches the currently playing song from Last.fm and posts details about the song to a specified channel.","archived":false,"fork":false,"pushed_at":"2025-03-12T11:19:59.000Z","size":168,"stargazers_count":5,"open_issues_count":4,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-12T12:25:48.905Z","etag":null,"topics":["lastfm","lastfm-now-playing","music","music-bot-telegram","nodejs","now-playing","spotify-now-playing","telegram-bot"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Burhanverse.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-09T08:35:01.000Z","updated_at":"2025-03-02T10:33:17.000Z","dependencies_parsed_at":"2024-08-27T07:35:37.523Z","dependency_job_id":"4181999b-1ef6-43d7-bb01-b4ab6b30df22","html_url":"https://github.com/Burhanverse/Tunified","commit_stats":null,"previous_names":["burhanverse/lastbot"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Burhanverse%2FTunified","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Burhanverse%2FTunified/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Burhanverse%2FTunified/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Burhanverse%2FTunified/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Burhanverse","download_url":"https://codeload.github.com/Burhanverse/Tunified/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244147327,"owners_count":20405942,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["lastfm","lastfm-now-playing","music","music-bot-telegram","nodejs","now-playing","spotify-now-playing","telegram-bot"],"created_at":"2025-03-18T03:00:51.323Z","updated_at":"2025-03-18T03:02:46.467Z","avatar_url":"https://github.com/Burhanverse.png","language":"JavaScript","funding_links":[],"categories":["Bots"],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/Burhanverse/assets/blob/main/tunified.svg\" width=\"130\"\u003e\n\u003c/div\u003e\n\u003ch1 align=\"center\"\u003eTunifiedNXT\u003c/h1\u003e \n\u003cp\u003e\nA Telegram bot to fetch the currently playing song from Last.fm and shares it on Telegram.\n\u003c/p\u003e\n\u003cP\u003e\nAvailable at \u003ca href=\"https://t.me/tunifiedxbot\"\u003eTunifiedNXT\u003c/a\u003e\n\u003c/P\u003e\n\n---\n### Preview:\n\u003cdiv align=\"center\"\u003e\n  \u003cimg src=\"https://github.com/Burhanverse/assets/blob/main/Tunified_demo.png\"\u003e\n\u003c/div\u003e\n\n### Features:\n\n- [x] Fetches the now playing song from Last.fm.\n- [x] Utilizes `YTMusicAPI` to get the required CoverART for the tracks.\n- [x] Posts the song details to a Telegram channel.\n- [x] Updates the post every 5 seconds to reflect the current song (channels only).\n- [x] Supports multiple channels.\n- [x] Supports group chats.\n\n---\n\n### Prerequisites \u0026 Setup:\n- Node.js v18+ installed.\n- Python 3.11+ installed.\n- Telegram Bot API token.\n- MongoDB for database.\n- Last.FM client installed in your phone for scrobbling tracks (it is recommanded to use pano scrobbler if you are on Android).\n- Last.fm API key, Shared secret and username.\n- Telegram Channel ID.\n\n1\\. Download and install [Node.js](https://nodejs.org/en/download/).\n\n2\\. Clone the repository:\n```bash\n    git clone https://github.com/Burhanverse/Tunified.git\n    cd Tunified\n```\n3\\. Install dependencies:\n```bash\n    npm install --include=dev\n```\n4\\. Create a `.env` file in the root directory and add the following environment variables:\n```env\nLASTFM_API_KEY=\nLASTFM_SHARED_SECRET=\nTELEGRAM_BOT_TOKEN=\nMONGO_URI=\n```\n5\\. Get your Last.FM API KEY \u0026 SHARED SECERT from [here](https://www.last.fm/api/account/create) remember to login with the same account you use for scrobbling tracks as this will serve as the main source for the bot to display the current playing track data.\n\n6\\. Add the bot [@myidbot](https://t.me/myidbot) to your chat or channel → send the command `/getgroupid@myidbot` and follow the instructions in the bot.\n\n7\\. To get `TELEGRAM_BOT_TOKEN`, go to chat with [@BotFather](https://t.me/BotFather) and send the command `/newbot`. Following the instructions. Upon completion, [@BotFather](https://t.me/BotFather) will give you the bot token. Don't forget to add the bot to your channel.\n\n8\\. Create a mongodb cluster for database.\n\n9\\.Start the bot:\n```bash\npython3 -m venv venv\n```\n```bash\nsource venv/bin/activate\n```\n```bash\n    npm start\n```\n---\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FBurhanverse%2FTunified","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FBurhanverse%2FTunified","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FBurhanverse%2FTunified/lists"}