Crycord is a modular Discord Client Mod written in Crystal.
Uses asar-cr.
You can download the statically linked build from the releases page!
shards install
crystal build --release
Note: Static builds can only be built in AlpineLinux
$ ./crycord -h
<== [Crycord] ==>
-v, --version Show version
-h, --help Show help
-gs, --groups Lists all available plugin groups
-p, --plugins Lists all available plugins
-c CSS_PATH, --css=CSS_PATH Sets CSS location
-f CORE_ASAR_PATH, --force=CORE_ASAR_PATH
Forces an asar path
-g PLUGIN_GROUP, --group=PLUGIN_GROUP
Selects the plugin group(s) to install. Split multiple groups with commas(,).
$ ./crycord -c ./Downloads/css.css
Flatpak Detected:
Make sure it has access to your CSS file
Usually ~/Downloads is accessible
Extracting core.asar...
Installing enable_css...
Installing enable_https...
Packing core.asar...
Done!
Restart Discord to see the results!
Name | Group | Description | Maintainer |
---|---|---|---|
enable_https | core | Disables CSP | GeopJr |
enable_css | core | Enables css injection | GeopJr |
unrestricted_resize | extra | Removes window size limits | GeopJr |
To enable groups of plugins use $ crycord -g core,extra -c /path/to/css
Note:
core
is enabled by default so there's no need to include it.
Crycord:
$ time ./crycord -c ~/Downloads/css.css
...
real 0m2,942s
user 0m2,932s
sys 0m0,462s
BeautifulDiscord:
$ time python3 -m beautifuldiscord --css ~/Downloads/css.css
...
real 0m4,593s
user 0m2,026s
sys 0m2,381s
- Any Discord Client modification is against their T.O.S.
- I am not responsible if your account gets terminated.
- Using a client mod such as this (and all others), deactivates many electron security functions.
- If a Discord Staff happens to stumble upon this, I don't use this tool on my account and it's made for educational purposes.
As I also wrote the shard that manages the asar pack/extract (these 2 functions at least), my main goal is to achieve max speed and max compatibility. Using Crystal only tools like Path, File, Dir etc. is one way to reach it. However, since I don't have access to a Mac and Windows doesn't have proper support, some paths (Discord config) are made specifically for linux.
First of all, it's written, well... in Crystal!
That alone makes it a lot faster!
Crycord also has a plugin(?) system!
Lastly, it can patch the flatpak version.
- Use a cross-platform way to find Discord's pid
- Clean the module collector
- GitHub action using docker in an attempt to build static builds automatically
- Fork it (https://github.com/your-github-user/crycord/fork)
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request