Install (macOS & Linux)
Detects your OS and architecture, verifies the checksum, and puts fylo on your PATH.
curl -fsSL https://fylo.del.ma/install.sh | sh
One canonical JSON file per document. Zero-payload prefix indexes. Git-like version control for your data. If an index ever drifts, FYLO rebuilds it from the documents — files are always the source of truth.
curl -fsSL https://fylo.del.ma/install.sh | sh
copy
One binary, one JSON protocol, your language. The same engine speaks NoSQL collections and plain SQL. Pick a language, rename the collection — every sample follows.
from fylo import Fylo
with Fylo("/mnt/fylo") as db:
db.users.create("document")
db.users.put({"name": "Ada", "role": "admin"})
db.users.latest("<id>")
Git-like version control, SQL query surfaces, field-level encryption, and durable queues — in one standalone binary with drop-in clients for 13 languages.
Each document is one canonical JSON file on disk, sharded by TTID prefix. Easy to inspect, debug, back up, and rebuild from.
S3-style key-only index entries in an mmap'd sorted catalog. Queries narrow by binary search, then hydrate only matching documents.
Query with a JSON operation protocol — put, find, patch, join — or plain SQL over the same engine. Exact, range, prefix, and trigram strategies.
Branch, commit, diff, merge, and restore your document store. Auto-commit on writes with content-addressed, deduplicated snapshots.
Download a single executable — no runtime, no daemon, no native addons. Install once, then use drop-in clients for 13 languages — thin shims plus local-first browser and mobile.
AES-GCM field encryption with HMAC blind indexes, app-supplied row-level security policies, and strict write-once WORM collections.
onWrite / onDelete hooks in await-sync or fire-and-forget mode, plus a durable local queue with consumer groups and dead-letter files.
Every client owns its database directly — the binary on desktop, an on-device OPFS engine in browsers and mobile. Nothing listens on a port; there is no auth surface to harden.
A compiled executable speaks a JSON machine protocol tested against Python, Ruby, PHP, Dart, Java, C#, C++, Swift, Kotlin, and Rust.
A collection is a directory. Index keys look like S3 object keys — field path, kind, value, doc ID — and carry no payload. If they ever drift, one rebuild reconstructs them from the documents.
<root>/.collections/users/
docs/ ← one .json file per document
4U/
4UUB32VGUDW.json
.deleted/ ← soft-deleted payloads
index/
manifest.json ← format version marker
keys.snapshot ← sorted keys, mmap'd O(log n)
keys.wal ← append-only mutation log
events/
users.ndjson ← append-only event journal
locks/ ← advisory file locks
| Operator | Index used | Example |
|---|---|---|
$eq |
Exact match key (eq) | role/eq.admin |
$gte / $lte |
Sortable numeric key (n / nr) | age/n/c03e… |
$like 'ali%' |
Forward prefix (f) | name/f/ali… |
$like '%ice' |
Reversed prefix (r) | name/r/eci… |
$like '%lic%' |
Trigram (g3) → hydrate → verify | name/g3/lic… |
$contains |
Exact match on array members | tags/eq/platform |
Start with one command — no daemons, no native addons, no monolithic caches.
curl -fsSL https://fylo.del.ma/install.sh | sh
FYLO ships as a single self-contained binary — no runtime to install. Grab the build for
your platform, then use it from 13 languages: a
thin client for Python,
Ruby, Node/TypeScript, PHP, Go, Rust, C#, Java, or Dart, plus local-first browser,
mobile (iOS/Android), and Flutter clients — all in the version-matched
fylo-clients bundle attached to each release.
Detects your OS and architecture, verifies the checksum, and puts fylo on your PATH.
curl -fsSL https://fylo.del.ma/install.sh | sh
Run in PowerShell — installs under %LOCALAPPDATA%\Fylo and updates your user PATH.
irm https://fylo.del.ma/install.ps1 | iex
| Platform | File | Download |
|---|---|---|
| macOS (Apple Silicon) | fylo-macos-arm64 |
Download |
| macOS (Intel) | fylo-macos-x64 |
Download |
| Linux (x64) | fylo-linux-x64 |
Download |
| Linux (ARM64) | fylo-linux-arm64 |
Download |
| Windows (x64) | fylo-windows-x64.exe |
Download |
Every release is checksummed — see SHA256SUMS. Older versions and release notes live on GitHub Releases.