Installation
Brainy is one install: the database, its native engine, and the reference engine underneath it arrive together.
In this section
Brainy is one install: the database, its native engine, and the reference engine underneath it arrive together.
npm install @soulcraft/brainy # or: bun add @soulcraft/brainyBASH@soulcraft/brainy is published on the Soulcraft registry. Point npm's scope at it once per machine (or per project in .npmrc):
npm config set @soulcraft:registry https://source.soulcraft.com/api/packages/soulcraft/npm/BASHRequirements
Node.js ≥ 22, or Bun ≥ 1.1 · TypeScript-native, ESM
A local filesystem for the store (mmap requires real files)
32 GB RAM serves ~1B entities; far less serves far more brains — see Scaling
The license key
A valid key turns on native acceleration. One key, two places it can live — the engine checks them in this order:
# 1. The environment (CI, containers, secret managers):
export BRAINY_LICENSE=sc_brainy_...
# 2. Or the machine file (workstations; one key per machine):
mkdir -p ~/.config/soulcraft
echo "$KEY" > ~/.config/soulcraft/brainy-license && chmod 600 ~/.config/soulcraft/brainy-licenseBASHKeys come from soulcraft.com/account and verify offline — nothing phones home, ever. Without a key the engine refuses acceleration loudly, names its cures, and keeps serving your data on the MIT reference engines: slower, never dark, never locked.
Verify
import { Brainy } from '@soulcraft/brainy'
const brain = new Brainy({ storage: { type: 'filesystem', path: './data' } })
await brain.init() // look for: Providers: 10/10 nativeTYPESCRIPTIf activation prints anything other than 10/10 native, the message names exactly what to fix — a missing key, an unbuilt binary, or a deliberate engine: 'reference' opt-in.
Your data lives in files you own, in an open format with an MIT reader. Installing Brainy never changes who holds your data: you do.