Download EByte

The ebyte command is one file with nothing else to install. Each archive below holds it along with a short quick start, the example format, the manual and the license files. The links always point to the latest release.

System Download Checked before release
Linux, x86-64 ebyte-linux-amd64.tar.gz Run on Linux
Linux, ARM64 ebyte-linux-arm64.tar.gz Cross-built
macOS, Apple silicon ebyte-darwin-arm64.tar.gz Run on macOS
macOS, Intel ebyte-darwin-amd64.tar.gz Cross-built
Windows, x86-64 ebyte-windows-amd64.zip Run on Windows
Browsers and Node.js (WebAssembly) ebyte-wasm.zip Run in Node.js

Checksums are in SHA256SUMS. RELEASE-MANIFEST.json records the source commit, the Go version that built each binary and how each archive was checked. Every release is listed on GitHub.

Install

On Linux or macOS:

tar -xzf ebyte-linux-amd64.tar.gz
sudo mv ebyte/ebyte /usr/local/bin/
ebyte --version

The Linux binaries are static, so they run on any distribution. The macOS binaries aren’t signed by Apple, so macOS may block the first run; allow it in System Settings under Privacy & Security, or run xattr -d com.apple.quarantine ebyte. On Windows, unzip the archive and put ebyte.exe in a folder on your PATH.

Each binary is built by the release workflow on GitHub, from the exact commit that passed the tests on Linux, macOS and Windows. Three of the five command-line archives are unpacked and run on their own system before the release goes out. The other two are built from the same source for a different chip and aren’t run first, and the table says which.

The WebAssembly Build

Since 0.7.0 each release also has ebyte-wasm.zip: the same library compiled to WebAssembly, with the wasm_exec.js loader from the Go release that built it. It’s what runs the browser demo. It has no command line and no files; a page passes it a schema and bytes and gets JSON back. Before the release goes out, it’s run in Node.js on every call it offers, and the release checks that it was built from the same commit with the same Go version as the command-line archives. The WebAssembly notes show how to load it.

What Differs on Windows

Since 0.6.0, ebyte on Windows does everything it does elsewhere, including --output FILE, which creates a new file and never replaces one. It needs a filesystem with hard links, which NTFS has; on FAT drives --output fails without writing anything, so use standard output there. Windows has no Unix permission bits, so the new file is simply an ordinary writable file. A name containing a colon, which Windows would treat as a hidden stream of another file, is refused.

Build It Yourself

You need Go 1.27.3 or later. There’s no C compiler and nothing outside the Go standard library involved.

git clone https://github.com/softdevstudio/ebyte
cd ebyte
go build -o ebyte ./cmd/ebyte

To use EByte from your own Go code instead:

go get github.com/softdevstudio/ebyte

License

EByte is licensed under the Apache License 2.0. Each archive includes the project’s LICENSE and NOTICE files, plus the license notices from the Go toolchain that built it.