An embedded evidence database for facts that disagree—preserving source, time, certainty, and history.
22
stars
322
commits
Rust
primary language
Sep 1, 2026
updated
Positorium is an experimental database engine for information that can conflict, vary over time, and carry source-specific certainty. It combines an immutable posit model, the Traqula query language, an append-only native store, a trusted-local HTTP service, and an in-browser WASM testbed.
The current release line is 0.1.4-beta.1. Beta means the documented language,
storage, transfer, and interface versions have explicit compatibility rules; it
does not mean an Internet-facing or production-ready service.
Try the browser testbed · Get started · Browse all documentation
Most databases converge on one current value. Positorium preserves evidence:
in effect queries make resolution policy explicit; andThis is useful for exploring master data, regulated records, investigations, and other domains where evidence accumulates and is revised.
Install rustup, then build and start the trusted-local server from the repository root:
cargo build --release --locked
./target/release/positorium
In another terminal, resolve or create one identity:
curl --fail-with-body --silent --show-error \
http://127.0.0.1:8080/v1/query \
-H 'content-type: application/json' \
--data '{"traqula_version":1,"script":"add role name; search [{(?person, name), ...}, \"Ada\", *] return ?person or add posit [{(+person, name)}, \"Ada\", @NOW];","stream":false}'
The response should have "status":"ok" and one thing result cell. Stop the
server with Ctrl-C. The default creates positorium.store and reopens it on the
next start.
For release archives, checksum verification, Windows commands, persistence checks, backup, Query Studio setup, and troubleshooting, follow Getting started.
127.0.0.1 by default and has no authentication.
Never expose it to an untrusted network.not exists, snapshots, typed predicates,
in effect, parameters, distinctness, ordering, and limits| Start here | Purpose |
|---|---|
| Getting started | Install, run, query, restart, back up, and troubleshoot |
| The Blackthorn Ruby | Interactive detective story and full Query Studio/Terrain showcase |
| Traqula | Language and query reference |
| Cookbook | Worked modeling and maintenance recipes |
| Operations | Durability, recovery, limits, and deployment posture |
| Core model | Identity, literal, temporal, and snapshot semantics |
| Storage | Append-only format contract |
| Transfer | Backup, export, import, and identity remapping |
| Terrain | Structural report and visualization contract |
| Theory | Philosophical foundations |
| Roadmap | Remaining and post-beta work |
The documentation index also links compatibility decisions, benchmarks, and maintainer specifications. The original paper, Modeling Conflicting, Unreliable, and Varying Information, provides additional background.
The repository pins the stable Rust toolchain and runs native checks on Linux, macOS, and Windows plus a browser WASM suite.
cargo fmt --all -- --check
cargo clippy --all-targets --all-features -- -D warnings
cargo test --all-targets --all-features --no-fail-fast
cargo test --all-targets --no-default-features --no-fail-fast
node tests/terrain_client.test.js
See Extending Traqula before changing the language or synchronized editor grammar.
Dual-licensed under Apache 2.0 or MIT, at your option.
SPDX-License-Identifier: Apache-2.0 OR MIT
Rust
63.1%
TeX
22.6%
JavaScript
6.1%
HTML
4.1%
CSS
3.1%
An embedded evidence database for facts that disagree—preserving source, time, certainty, and history.
22
stars
322
commits
Rust
primary language
Sep 1, 2026
updated
Positorium is an experimental database engine for information that can conflict, vary over time, and carry source-specific certainty. It combines an immutable posit model, the Traqula query language, an append-only native store, a trusted-local HTTP service, and an in-browser WASM testbed.
The current release line is 0.1.4-beta.1. Beta means the documented language,
storage, transfer, and interface versions have explicit compatibility rules; it
does not mean an Internet-facing or production-ready service.
Try the browser testbed · Get started · Browse all documentation
Most databases converge on one current value. Positorium preserves evidence:
in effect queries make resolution policy explicit; andThis is useful for exploring master data, regulated records, investigations, and other domains where evidence accumulates and is revised.
Install rustup, then build and start the trusted-local server from the repository root:
cargo build --release --locked
./target/release/positorium
In another terminal, resolve or create one identity:
curl --fail-with-body --silent --show-error \
http://127.0.0.1:8080/v1/query \
-H 'content-type: application/json' \
--data '{"traqula_version":1,"script":"add role name; search [{(?person, name), ...}, \"Ada\", *] return ?person or add posit [{(+person, name)}, \"Ada\", @NOW];","stream":false}'
The response should have "status":"ok" and one thing result cell. Stop the
server with Ctrl-C. The default creates positorium.store and reopens it on the
next start.
For release archives, checksum verification, Windows commands, persistence checks, backup, Query Studio setup, and troubleshooting, follow Getting started.
127.0.0.1 by default and has no authentication.
Never expose it to an untrusted network.not exists, snapshots, typed predicates,
in effect, parameters, distinctness, ordering, and limits| Start here | Purpose |
|---|---|
| Getting started | Install, run, query, restart, back up, and troubleshoot |
| The Blackthorn Ruby | Interactive detective story and full Query Studio/Terrain showcase |
| Traqula | Language and query reference |
| Cookbook | Worked modeling and maintenance recipes |
| Operations | Durability, recovery, limits, and deployment posture |
| Core model | Identity, literal, temporal, and snapshot semantics |
| Storage | Append-only format contract |
| Transfer | Backup, export, import, and identity remapping |
| Terrain | Structural report and visualization contract |
| Theory | Philosophical foundations |
| Roadmap | Remaining and post-beta work |
The documentation index also links compatibility decisions, benchmarks, and maintainer specifications. The original paper, Modeling Conflicting, Unreliable, and Varying Information, provides additional background.
The repository pins the stable Rust toolchain and runs native checks on Linux, macOS, and Windows plus a browser WASM suite.
cargo fmt --all -- --check
cargo clippy --all-targets --all-features -- -D warnings
cargo test --all-targets --all-features --no-fail-fast
cargo test --all-targets --no-default-features --no-fail-fast
node tests/terrain_client.test.js
See Extending Traqula before changing the language or synchronized editor grammar.
Dual-licensed under Apache 2.0 or MIT, at your option.
SPDX-License-Identifier: Apache-2.0 OR MIT
Rust
63.1%
TeX
22.6%
JavaScript
6.1%
HTML
4.1%
CSS
3.1%