GithubHelp home page GithubHelp logo

nekusu / tidal-enhanced-patcher Goto Github PK

View Code? Open in Web Editor NEW
14.0 3.0 2.0 1.29 MB

Simple script that extends the functionality of the TIDAL desktop app.

License: MIT License

JavaScript 100.00%
discord discord-rich-presence discord-rpc tidal tidal-api tidal-tools

tidal-enhanced-patcher's Introduction

TIDAL Enhanced Patcher

TIDAL Enhanced Patcher is a simple script that allows you to extend the functionality of the TIDAL desktop app by modifying the ASAR archive.

Features

Discord Rich Presence integration

Unlike many other awesome repositories trying to address the lack of official Discord RPC integration, TEP directly modifies the source code so there is no need to run scripts in the background, reverse engineer the TIDAL API, or use third-party APIs. A native-like experience!

Download your favorite music

TIDAL Enhanced allows you to download music and videos in the highest quality directly from TIDAL thanks to the Media Downloader app, just paste the track/album/artist link in the downloader and enjoy your offline music!

Improved system tray menu

Playback controls and a Discord RPC switch can be quickly accessed from the system tray menu.

Developer menu enabled

You can now access various development tools disabled by default in the production build.

Usage

Only Windows platforms are supported. Node.js required.

git clone https://github.com/nekusu/tidal-enhanced-patcher.git
cd tidal-enhanced-patcher
npm i
node patch

The script will automatically find the app path, extract the source code, patch it, and create the asar package. A backup of the original file will be created.

App updates will sometimes require running the patcher again.

You can undo the changes by running the following command:

node unpatch

Alternatively, you can go to C:\Users\[user]\AppData\Local\TIDAL\app-[version]\resources, remove the app.asar file, and rename the app_original.asar file to app.asar.

To manually extract the source code files use:

node extract

Roadmap

  • Discord RPC toggle in system tray menu.
  • Integration with Tidal-Media-Downloader.
  • Auto-patch source code after an app update.
  • MacOS support (?).

Disclaimer

  • TIDAL Media Downloader disclaimer.
  • This repository does not distribute any original or modified source code of the TIDAL desktop app.
  • I am in no way responsible for account bans for using a modified client. Use the patcher at your own risk.

Acknowledgments

Debugtron made this project possible, check it out!

tidal-enhanced-patcher's People

Contributors

joshrmcdaniel avatar nekusu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

tidal-enhanced-patcher's Issues

Changing Tidal's volume from Windows Volume Mixer or an external app

Is it possible to make Tidal change it's volume (the one near the quality selector) according to the volume set in Windows Volume Mixer?
If not, is it possible to make some kind of "API" that could let other apps control Tidal's volume?

Currently changing volume within Tidal changes it's volume in Windows' Volume Mixer, but changing volume in Volume Mixer does not change a value of the volume slider in Tidal.
If you'd try to change Tidal's volume from Windows' Volume Mixer the loudness of currently playing song would change, but Tidal will reset it as soon as:

  • song is paused and resumed,
  • rewound to the start using "Previous" button,
  • or changed

(Bug?) Close the app before running the patcher

Hello, as the title says everytime i try to run the node patch command it gives me the following output

TIDAL Enhanced Patcher - https://github.com/nekusu
Close the app before running the patcher!

Following the usage instructions on the main page:

  1. I have installed the latest version available of nvm (1.19.0)
  2. I told nvm to use the latest LTS version: (18.12.0) of node.js available
  3. I have tried to run the command: git clone [email protected]:nekusu/tidal-enhanced-patcher.git but it gave me acces denied as output
  4. So i cloned the rep by using git clone https://github.com/nekusu/tidal-enhanced-patcher.git
  5. Then i moved to the main folder and tried to use the command node patch
  • I've closed tidal and made sure no process of the exe were executing in background
  • I've closed Discord and related threads
  • I've tried to run the command just after i've restarted my pc but I still get the same error.

[Feature Request] Integrate WebNowPlaying into the codebase

Hey there!

First of all, thanks for all your work on the patcher so far, it has been working flawlessly for the last month I've been using it.

However, I was wondering if it would be possible to integrate WebNowPlaying-Redux functionality to enable pulling metadata from Tidal's app and to control it in a similar manner to how both Spicetify-cli and YTMDesktopApp (though currently in a broken state with the latest changes) have been doing it for both Spotify's and Youtube's (Unofficial) desktop apps.

If there's any information or additional you might need, please don't hesitate to ask, and thanks in advance!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.