Open-source alternative of Discord desktop's app.asar
Find a file
2021-12-16 12:58:14 +00:00
.github/workflows [CI] Revert minified default builds 2021-12-14 23:03:26 +00:00
polyfills [Polyfills > mkdirp] Convert to new polyfill system instead of in utils 2021-12-11 11:08:35 +00:00
scripts [Scripts] Use scripts dir for containing util scripts 2021-12-13 10:56:24 +00:00
src [AutoStart] Rewrite to use switch for index require, generic stub 2021-12-16 12:58:14 +00:00
.gitignore [Gitignore] More specific package-lock.json ignore 2021-12-10 19:54:50 +00:00
changelog.md [Changelog] Tweak v0.3 2021-12-11 20:46:14 +00:00
faq.md [FAQ] Add originality question 2021-12-13 11:06:15 +00:00
LICENSE Initial commit 2021-12-09 11:14:14 +00:00
README.md [Readme] Make experimental notice less 2021-12-13 20:18:07 +00:00
roadmap.md [Roadmap] Mark all of v1.0 as done 2021-12-13 20:18:33 +00:00

OpenAsar

An experimental open-source alternative of Discord desktop's app.asar

Features

  • 🚀 Speed: ~2x faster startup times (up to ~4x with experimental config)
  • 🪶 Lightweight: <2% of Discord's original size (9mb -> ~150kb)
  • ⚙️ Configurable: Adds many config options for Discord and OpenAsar enhancements (see config section)
  • 🔌 Hotpluggable: Replace one file and it's installed, that's it
  • 🛡️ No Tracking: Removes Discord's built-in tracking for crashes and errors
  • 🪡 Patching: A future platform for custom patches to further enhance

🧪 Experimental

OpenAsar is highly stable, but still likely has a few possible minor issues. Crashes are very unlikely.

FAQ


Install Guide

OpenAsar is not 100% recommened due to it being experimental.

  1. Download latest nightly release
  2. Find your app.asar, it should be <where the Discord exe is>/resources/app.asar. For Windows this is like: %localappdata%\Discord\app-1.0.9003\resources\app.asar (your app folder may have a different version)
  3. Backup your original app.asar (rename to app.asar.backup / etc)
  4. Install OpenAsar app.asar into the original path (you may need to be root on Linux)
  5. Restart Discord via system tray (you should notice Discord start faster as a way to see if it's instantly working)

Config

You can configure OpenAsar via settings.json (found in your Discord app data / user data), under a openasar object. Keep in mind most options are defaults for good reason. The avaliable options are:

  • quickstart (bool, default false) - whether to use Quickstart (experimental)
  • skipStartupUpdateChecks (bool, default false) - skips startup update checking (Linux-only)
  • autoupdate (bool, default true) - whether to autoupdate OpenAsar after Discord startup
  • multiInstance (bool, default false) - whether to enable multi-instance
  • ssoeAllowlist (bool, default true) - whether to use safer custom method of opening external urls (true) or normal Discord's method (false)

An example of a settings.json with OpenAsar config:

{
  "BACKGROUND_COLOR": "#202225",
  "IS_MAXIMIZED": false,
  "IS_MINIMIZED": false,
  "WINDOW_BOUNDS": {
    "x": 801,
    "y": 22,
    "width": 797,
    "height": 876
  },
  "MINIMIZE_TO_TRAY": false,
  "OPEN_ON_STARTUP": false,
  "openasar": {
    "quickstart": true
  }
}

Additionally there are some environmental variables you can use:

  • OPENASAR_QUICKSTART (bool, default false) - same as quickstart config option
  • OPENASAR_NOSTART (bool, default false) - if enabled halts starting after splash loads (for splash testing)