All you need to use Discord History Tracker is either an up-to-date browser, or the Discord desktop client. Visit the official website for instructions.
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 contact@chylex.com or Twitter @chylexmc.
If you are interested in creating your own version from the source code, continue reading the [build instructions](#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/scriptsrc/renderer/
contains HTML, CSS, JS files that are then combined into the offline viewer pagelib/
contains utilities required to build the projectweb/
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) Java 7+ / OpenJDK 7+
- Only required for optional CSS minification
- (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.js
is the raw tracker script that can be pasted into a browser consolebld/track.html
is the tracker script but sanitized for inclusion in HTML (seeweb/index.php
for examples)bld/viewer.html
is the complete offline viewer
You can tweak the build process using the following flags:
python build.py --nominify
to disable minification
The build process automatically minifies the CSS using YUI Compressor
and JS files using UglifyJS@3
.
- If the
--nominify
flag is used, minification will be completely disabled - If Java is not available from the command line, CSS minification will be skipped
- You can check whether you have installed Java correctly by running
java -version
in the command line, and making sure the version is1.7.xyz
or higher
- You can check whether you have installed Java correctly by running
- If
uglify-es
is 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
lib/
- When building on Linux/Mac, the build script will attempt to find
uglifyjs
in the command line, however you need to make sure it's the correct package (onlyuglify-es
will work; if you install the older package just nameduglifyjs
, then it will crash and probably set something on fire)