bijection command line.
Install it with:
~/.bijection/bin/bijection. It installs for your user
only and never uses sudo. Running it again reinstalls the latest release, or
does nothing when that exact binary is already installed.
Check the installation:
Add bijection to your PATH
The installer does not edit your shell’s startup files. When
~/.bijection/bin is not on your PATH, it prints the line to add for your
shell. For zsh:
~/.zshrc, ~/.bash_profile on macOS or ~/.bashrc on Linux,
~/.config/fish/config.fish, or ~/.profile for other shells), run it with
BIJECTION_MODIFY_PATH=1:
Install a specific version
SetBIJECTION_VERSION to install that release instead of the latest one:
Supported platforms
The installer needs
curl or wget, and sha256sum or shasum. On Linux
distributions that use musl libc, such as Alpine, the command line runs but the
Node.js runtime of its toolchain needs glibc, so builds do not. Windows is not
supported; use a Linux distribution under WSL.
The toolchain
You don’t install Node.js for Bijection. Bijection functions are TypeScript. To bundle, typecheck and push them, the CLI uses a toolchain pinned to its own version: a Node.js runtime and the Bijection SDK with its dependencies, including TypeScript for projects that have none of their own. The first command that needs it, such asbijection init or
bijection dev, downloads the toolchain for your platform, verifies its SHA-256
and keeps it in ~/.bijection/toolchains/<version>/. The SDK package itself is
cached in ~/.bijection/sdk/.
You do not need Node.js, npm or any other package manager for a Bijection
backend. In a project without a package.json that declares bijection, the
CLI writes node_modules/bijection itself so that your editor finds the SDK’s
types.
A JavaScript frontend already has a package manager. It declares the SDK in its
package.json as the tarball https://bijection.com/sdk/bijection-<version>.tgz
(the SDK is not published to the npm registry) and installs it with its other
dependencies. The react-vite and nextjs templates of bijection init set
this up; these two templates need Node.js with pnpm, bun, yarn or npm for the
app itself.
Log in
bijection login signs this machine in to your Bijection account, once per
machine. It prints a link and a code; open the link, check the code and approve
the sign-in. The credential is stored in ~/.bijection/config.json.
Bijection’s hosted service is not yet open for public sign-up, and the CLI
has no default management service. Before running
bijection login, set
BIJECTION_MANAGEMENT_URL to the management service URL you were given, in
your shell’s startup file so that every later bijection command sees it too:Upgrade
bijection upgrade replaces the binary with the latest release after verifying
it against the release manifest, and reports when you already have the latest
one. The new version downloads its own toolchain the first time a command needs
it. Projects that declare the SDK in package.json keep the version they name:
change the version in the tarball URL and reinstall the app’s dependencies to
move them to the new SDK.
Uninstall
PATH line from your shell’s startup file if you
added one. Your projects and deployments are not affected.
Next steps
React quickstart
Create a React app with Bijection from the
react-vite template.Next.js quickstart
Create a Next.js app with Bijection from the
nextjs template.All quickstarts
Add Bijection to another framework or language.
Tutorial: Build a chat app
Build a real-time chat app step by step.