Here's instructions for how to build all the third-party libraries that this service uses. # How to build /public_html/styles/normalize.css-8.0.1.css wget "https://github.com/necolas/normalize.css/archive/refs/tags/8.0.1.tar.gz" tar -xf "./8.0.1.tar.gz" mv "./normalize.css-8.0.1/normalize.css" "./normalize.css-8.0.1.css" rm -r "./8.0.1.tar.gz" "./normalize.css-8.0.1" # How to build /public_html/scripts/base64.js-3.7.5.js wget "https://github.com/dankogai/js-base64/archive/refs/tags/3.7.5.tar.gz" tar -xf "./3.7.5.tar.gz" mv "./js-base64-3.7.5/base64.js" "./base64.js-3.7.5.js" rm -r "./3.7.5.tar.gz" "./js-base64-3.7.5" # How to build /public_html/scripts/bech32-2.0.0.js wget "https://github.com/bitcoinjs/bech32/archive/refs/tags/v2.0.0.tar.gz" tar -xf "./v2.0.0.tar.gz" sed -i 's/Object.defineProperty(/\/\/Object.defineProperty(/g' "./bech32-2.0.0/dist/index.js" sed -i 's/exports/globalThis/g' "./bech32-2.0.0/dist/index.js" mv "./bech32-2.0.0/dist/index.js" "./bech32-2.0.0.js" rm -rf "./v2.0.0.tar.gz" "./bech32-2.0.0" # How to build /public_html/scripts/bignumber.js-9.1.1.js wget "https://github.com/MikeMcl/bignumber.js/archive/refs/tags/v9.1.1.tar.gz" tar -xf "./v9.1.1.tar.gz" mv "./bignumber.js-9.1.1/bignumber.js" "./bignumber.js-9.1.1.js" rm -rf "./v9.1.1.tar.gz" "./bignumber.js-9.1.1" # How to build /public_html/scripts/BLAKE2b-0.0.2.js wget "https://github.com/NicolasFlamel1/BLAKE2b-WASM-Wrapper/releases/download/v0.0.2/BLAKE2b-0.0.2.zip" unzip "./BLAKE2b-0.0.2.zip" sed -i 's/"BLAKE2b.wasm"/"." + getResource(".\/scripts\/BLAKE2b-0.0.2.wasm")/g' "./wasm/BLAKE2b.js" mv "./wasm/BLAKE2b.js" "./BLAKE2b-0.0.2.js" rm -rf "./BLAKE2b-0.0.2.zip" "./wasm" "./asm.js" # How to build /public_html/scripts/BLAKE2b-0.0.2.wasm wget "https://github.com/NicolasFlamel1/BLAKE2b-WASM-Wrapper/releases/download/v0.0.2/BLAKE2b-0.0.2.zip" unzip "./BLAKE2b-0.0.2.zip" mv "./wasm/BLAKE2b.wasm" "./BLAKE2b-0.0.2.wasm" rm -rf "./BLAKE2b-0.0.2.zip" "./wasm" "./asm.js" # How to build /public_html/scripts/ChaCha-2.1.0.js wget "https://github.com/calvinmetcalf/chacha20poly1305/archive/refs/tags/v2.1.0.tar.gz" tar -xf "./v2.1.0.tar.gz" cd "./chacha20poly1305-2.1.0" browserify index.js --standalone chacha -o "../ChaCha-2.1.0.js" cd .. rm -rf "./v2.1.0.tar.gz" "./chacha20poly1305-2.1.0" # How to build /public_html/scripts/crc32-1.2.0.js wget "https://github.com/SheetJS/js-crc32/archive/refs/tags/v1.2.0.tar.gz" tar -xf "./v1.2.0.tar.gz" mv "./js-crc32-1.2.0/crc32.js" "./crc32-1.2.0.js" rm -rf "./v1.2.0.tar.gz" "./js-crc32-1.2.0" # How to build /public_html/scripts/Ed25519-0.0.22.js wget "https://github.com/NicolasFlamel1/Ed25519-WASM-Wrapper/releases/download/v0.0.22/Ed25519-0.0.22.zip" unzip "./Ed25519-0.0.22.zip" sed -i 's/"Ed25519.wasm"/"." + getResource(".\/scripts\/Ed25519-0.0.22.wasm")/g' "./wasm/Ed25519.js" mv "./wasm/Ed25519.js" "./Ed25519-0.0.22.js" rm -rf "./Ed25519-0.0.22.zip" "./wasm" "./asm.js" # How to build /public_html/scripts/Ed25519-0.0.22.wasm wget "https://github.com/NicolasFlamel1/Ed25519-WASM-Wrapper/releases/download/v0.0.22/Ed25519-0.0.22.zip" unzip "./Ed25519-0.0.22.zip" mv "./wasm/Ed25519.wasm" "./Ed25519-0.0.22.wasm" rm -rf "./Ed25519-0.0.22.zip" "./wasm" "./asm.js" # How to build /public_html/scripts/glMatrix-3.4.1.js wget "https://github.com/toji/gl-matrix/archive/refs/tags/v3.4.1.tar.gz" tar -xf "./v3.4.1.tar.gz" mv "./gl-matrix-3.4.1/dist/gl-matrix.js" "./glMatrix-3.4.1.js" rm -rf "./v3.4.1.tar.gz" "./gl-matrix-3.4.1" # How to build /public_html/scripts/hi-base32-0.5.1.js wget "https://github.com/emn178/hi-base32/archive/refs/tags/v0.5.1.tar.gz" tar -xf "./v0.5.1.tar.gz" sed -i 's/: {};/: self;/g' "./hi-base32-0.5.1/src/base32.js" mv "./hi-base32-0.5.1/src/base32.js" "./hi-base32-0.5.1.js" rm -rf "./v0.5.1.tar.gz" "./hi-base32-0.5.1" # How to build /public_html/scripts/jQuery-3.6.4.js wget "https://github.com/jquery/jquery/archive/refs/tags/3.6.4.tar.gz" tar -xf "./3.6.4.tar.gz" mv "./jquery-3.6.4/dist/jquery.js" "./jQuery-3.6.4.js" rm -rf "./3.6.4.tar.gz" "./jquery-3.6.4" # How to build /public_html/scripts/JSONBigNumber-1.1.1.js wget "https://github.com/wbuss/JSONBigNumber/archive/refs/tags/v1.1.1.tar.gz" tar -xf "./v1.1.1.tar.gz" cd "./JSONBigNumber-1.1.1" sed -i 's/.exports = {/.exports = {optimization: {minimize: false},/g' "./webpack.config.js" npm install npm run build cd .. mv "./JSONBigNumber-1.1.1/dist/JSONBigNumber.min.js" "./JSONBigNumber-1.1.1.js" rm -rf "./v1.1.1.tar.gz" "./JSONBigNumber-1.1.1" # How to build /public_html/scripts/jsQR-1.4.0.js wget "https://github.com/cozmo/jsQR/archive/refs/heads/master.zip" unzip "./master.zip" mv "./jsQR-master/dist/jsQR.js" "./jsQR-1.4.0.js" rm -rf "./master.zip" "./jsQR-master" # How to build /public_html/scripts/js-sha3-0.8.0.js wget "https://github.com/emn178/js-sha3/archive/refs/tags/v0.8.0.tar.gz" tar -xf "./v0.8.0.tar.gz" mv "./js-sha3-0.8.0/src/sha3.js" "./js-sha3-0.8.0.js" rm -rf "./v0.8.0.tar.gz" "./js-sha3-0.8.0" # How to build /public_html/scripts/js-sha256-0.10.0.js wget "https://github.com/emn178/js-sha256/archive/refs/tags/v0.10.0.tar.gz" tar -xf "./v0.10.0.tar.gz" mv "./js-sha256-0.10.0/src/sha256.js" "./js-sha256-0.10.0.js" rm -rf "./v0.10.0.tar.gz" "./js-sha256-0.10.0" # How to build /public_html/scripts/qrcode-generator-1.4.4.js wget "https://github.com/kazuhikoarase/qrcode-generator/archive/refs/tags/js1.4.4.tar.gz" tar -xf "./js1.4.4.tar.gz" sed -i '0,/out.writeByte(0x00);/s//out.writeByte(12);/' "./qrcode-generator-js1.4.4/js/qrcode.js" sed -i '0,/out.writeByte(0x00);/s//out.writeByte(12);/' "./qrcode-generator-js1.4.4/js/qrcode.js" sed -i '0,/out.writeByte(0x00);/s//out.writeByte(13);/' "./qrcode-generator-js1.4.4/js/qrcode.js" mv "./qrcode-generator-js1.4.4/js/qrcode.js" "./qrcode-generator-1.4.4.js" rm -rf "./js1.4.4.tar.gz" "./qrcode-generator-js1.4.4" # How to build /public_html/scripts/Secp256k1-zkp-0.0.29.js wget "https://github.com/NicolasFlamel1/Secp256k1-zkp-WASM-Wrapper/releases/download/v0.0.29/Secp256k1-zkp-0.0.29.zip" unzip "./Secp256k1-zkp-0.0.29.zip" sed -i 's/"secp256k1-zkp.wasm"/"." + getResource(".\/scripts\/Secp256k1-zkp-0.0.29.wasm")/g' "./wasm/secp256k1-zkp.js" mv "./wasm/secp256k1-zkp.js" "./Secp256k1-zkp-0.0.29.js" rm -rf "./Secp256k1-zkp-0.0.29.zip" "./wasm" "./asm.js" # How to build /public_html/scripts/Secp256k1-zkp-0.0.29.wasm wget "https://github.com/NicolasFlamel1/Secp256k1-zkp-WASM-Wrapper/releases/download/v0.0.29/Secp256k1-zkp-0.0.29.zip" unzip "./Secp256k1-zkp-0.0.29.zip" mv "./wasm/secp256k1-zkp.wasm" "./Secp256k1-zkp-0.0.29.wasm" rm -rf "./Secp256k1-zkp-0.0.29.zip" "./wasm" "./asm.js" # How to build /public_html/scripts/SMAZ-0.0.31.js wget "https://github.com/NicolasFlamel1/SMAZ-WASM-Wrapper/releases/download/v0.0.31/SMAZ-0.0.31.zip" unzip "./SMAZ-0.0.31.zip" sed -i 's/"SMAZ.wasm"/"." + getResource(".\/scripts\/SMAZ-0.0.31.wasm")/g' "./wasm/SMAZ.js" mv "./wasm/SMAZ.js" "./SMAZ-0.0.31.js" rm -rf "./SMAZ-0.0.31.zip" "./wasm" "./asm.js" # How to build /public_html/scripts/SMAZ-0.0.31.wasm wget "https://github.com/NicolasFlamel1/SMAZ-WASM-Wrapper/releases/download/v0.0.31/SMAZ-0.0.31.zip" unzip "./SMAZ-0.0.31.zip" mv "./wasm/SMAZ.wasm" "./SMAZ-0.0.31.wasm" rm -rf "./SMAZ-0.0.31.zip" "./wasm" "./asm.js" # How to build /public_html/scripts/X25519-0.0.23.js wget "https://github.com/NicolasFlamel1/X25519-WASM-Wrapper/releases/download/v0.0.23/X25519-0.0.23.zip" unzip "./X25519-0.0.23.zip" sed -i 's/"X25519.wasm"/"." + getResource(".\/scripts\/X25519-0.0.23.wasm")/g' "./wasm/X25519.js" mv "./wasm/X25519.js" "./X25519-0.0.23.js" rm -rf "./X25519-0.0.23.zip" "./wasm" "./asm.js" # How to build /public_html/scripts/X25519-0.0.23.wasm wget "https://github.com/NicolasFlamel1/X25519-WASM-Wrapper/releases/download/v0.0.23/X25519-0.0.23.zip" unzip "./X25519-0.0.23.zip" mv "./wasm/X25519.wasm" "./X25519-0.0.23.wasm" rm -rf "./X25519-0.0.23.zip" "./wasm" "./asm.js"