Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/naamloos/disco
A Groovy external client mod for Discord
https://github.com/naamloos/disco
Last synced: about 1 month ago
JSON representation
A Groovy external client mod for Discord
- Host: GitHub
- URL: https://github.com/naamloos/disco
- Owner: Naamloos
- License: gpl-3.0
- Created: 2023-01-12T00:02:58.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2024-10-23T23:42:31.000Z (2 months ago)
- Last Synced: 2024-10-24T02:24:26.811Z (2 months ago)
- Language: C#
- Homepage:
- Size: 75.2 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Disco
A Groovy external client mod for DiscordCompatibility:
| OS | Working? |
|----|----|
| Windows | ✅ (TESTED) |
| Linux | ❌ (UNTESTED) |
| OSX | ❌ (UNTESTED) |Feel free to PR support for your favorite OS!
## ⚠️ Warning
Client mods are officially prohibited by Discord. Use this at your own risk! Technically this mod does not modify the client itself, but rather injects javascript code through the built-in electron debugger. To Discord this will most likely still be considered a client mod, though!By using Disco, you acknowledge and agree that I, Naamloos, am not responsible for any damages to your Discord account, including but not limited to account bans or other penalties.
## Features
- Custom CSS styling
- Hot-Reload for CSS
- Enables "Experiments"## To-do
- [ ] Front-end with configuration
- [ ] Custom script injection
- [ ] Allow disabling the experiments enabler among other things
- [ ] Custom JS scripting API
- [ ] C# plugin API
- [ ] Custom CSS selectors## Limitations
Due to Discord limiting the domains that images and other resources may be loaded from, you may encounter issues with external styles or resources. At this moment it's not possible for me to circumvent this, which is actually kind of a good thing, technically!### Possible workarounds
*Note: None of these have been tested so far, feel free to notify me whether these work! (via GitHub issues or on Discord)*
- Install something like OpenASAR which removes these limitations (You'd now be modifying your client's code, which is against the goal of this project!)
- Host your resources on your local disk (I do not know whether this may actually work.)## How to use
Using Disco is quite simple. All you need to do is Run Disco, which restarts your Discord client with electron's remote debugger enabled. Disco will use the debugger to run two scripts: `Patcher.js`, which injects Disco's styling, and `Experiments.js`, which enabled Discord's experiments tab.Before doing so, make sure the following field is present in `%appdata%/discord/settings.json`:
```json
"DANGEROUS_ENABLE_DEVTOOLS_ONLY_ENABLE_IF_YOU_KNOW_WHAT_YOURE_DOING": true,
```
As of right now, this is not enabled automatically, but it is planned.To modify CSS, edit the `style.css` file in Disco's directory. Do take note that Disco does not include any of the fancy stuff other client mods have, such as sass/scss support or importing styles from external resources. Luckily, Disco does have a hot-reload feature that will hot-reload your styling as you modify it.
At the moment, Disco does not support custom scripts. When it does, do expect it to be significantly less powerful than something like BetterDiscord or Vencord due to the fact Disco does not actually modify the actual client code.