To report an issue or suggestion, first please see the issues page and make sure someone else hasn't already created a similar issue report. If you do find an existing issue, comment on it or add a reaction. Otherwise, either click New Issue, or contact me via email firstname.lastname@example.org or Twitter @chylexmc.
If you are interested in creating your own version from the source code, continue reading the build instructions below.
Follow the steps below to create your own version of Discord History Tracker.
Fork the repository and clone it to your computer (if you've never used git, you can download the GitHub Desktop client to get started quickly).
Now you can modify the source code:
src/tracker/contains JS files that are automatically combined into the tracker bookmark/script
src/viewer/contains HTML, CSS, JS files that are then combined into the offline viewer page
lib/contains utilities required to build the project
web/contains source code of the official website, which can be used as a template when making your own website
After you've done changes to the source code, you will need to build it. Before that, download and install:
- (required) Python 3
- Use to run the build script
- (optional) Node + npm & command line uglify-es
- Not required on Windows
- Only required for optional JS minification on Linux/Mac
Now open the folder that contains
build.py in a command line, and run
python build.py to create a build with default settings. The following files will be created:
bld/track.jsis the raw tracker script that can be pasted into a browser console
bld/track.htmlis the tracker script but sanitized for inclusion in HTML (see
bld/viewer.htmlis the complete offline viewer
You can tweak the build process using the following flags:
python build.py --nominifyto disable minification
The build process automatically minifies JS using
UglifyJS@3, and CSS using a custom minifier.
- If the
--nominifyflag is used, minification will be completely disabled
uglify-esis not available from the command line, JS minification will be skipped
- When building on Windows 64-bit, the build script will use the included Node runner and packages
- When building on Windows 32-bit, you will need to download Node 32-bit and replace the included one in
- When building on Linux/Mac, the build script will attempt to find
uglifyjsin the command line, however you need to make sure it's the correct package (only
uglify-eswill work; if you install the older package just named
uglifyjs, then it will crash and probably set something on fire)