Install
jint ships as one binary per platform. It carries its own runtime, so you need no JavaScript
runtime to run it or to write .ts rules.
Install script
curl -fsSL https://raw.githubusercontent.com/sedulustech/jint/feat/decisions-model/install.sh | bash
The script picks the binary for your platform, checks its sha256 against checksums.txt, and
installs it to ~/.local/bin/jint. If that directory is not on your PATH, the script says so.
To install a specific release, set VERSION on the bash side of the pipe:
curl -fsSL https://raw.githubusercontent.com/sedulustech/jint/feat/decisions-model/install.sh | VERSION=v1.2.3 bash
npm
npm install -g @sedulus/jint@rc # or add it as a devDependency
npx @sedulus/jint@rc --version
Download a binary
Each release carries one archive per platform and a checksums.txt that covers all of them:
| Platform | Archive |
|---|---|
| Linux x64 | jint-linux-x64.tar.gz |
| Linux arm64 | jint-linux-arm64.tar.gz |
| macOS Apple silicon | jint-darwin-arm64.tar.gz |
| macOS Intel | jint-darwin-x64.tar.gz |
Download the archive for your platform from the site’s download page or from the
GitHub releases. Check it, unpack it, and put the
jint binary on your PATH:
sha256sum -c --ignore-missing checksums.txt # on macOS: shasum -a 256 -c --ignore-missing checksums.txt
tar -xzf jint-linux-x64.tar.gz
install -m 755 jint ~/.local/bin/jint
jint.sh mirrors the releases under /dl/, in the same layout GitHub uses
(/dl/latest/download/<archive> and /dl/download/<tag>/<archive>). To make the install script
read from the mirror, set RELEASE_BASE=https://jint.sh/dl.
Beta
The beta channel is one unversioned build, overwritten on every push to the beta branch. It is not a GitHub release and has no tag. Install it through the mirror:
curl -fsSL https://raw.githubusercontent.com/sedulustech/jint/feat/decisions-model/install.sh | RELEASE_BASE=https://jint.sh/dl VERSION=beta bash
Or download an archive from https://jint.sh/dl/download/beta/<archive>, with its
checksums.txt beside it. https://jint.sh/dl/download/beta/COMMIT names the commit the beta
was built from. Because the beta is overwritten, pin a tagged release when you need the same
binary twice.
Requirements
On Linux the only system requirement is glibc, which any mainstream distribution has. On musl-based images such as Alpine, install a glibc layer first or use a glibc base image.
First run
jint asks a classifier endpoint its questions, so it needs an API key in the environment:
JINT_API_KEY, or OPENAI_API_KEY. It runs only the rules a config names, so write a
jint.config.ts first; running jint run without one prints every rule domain and a working
example. See Configuration for the config and Rules for the rules.
Uninstall
Delete the binary: rm ~/.local/bin/jint.
Build from source
See Development in the README.