Note
This repo is mirrored from opral/monorepo. Use this mirrored repo as the issue tracker.
Note
Lix is in beta · Follow progress to v1.0 →
Lix is an embeddable change control system that enables Git-like features such as history, versions (branches), diffs, or blame for any file format.
What makes Lix unique:
- Supports any file format - Track changes in
.xlsx,.pdf,.jsonetc. via plugins. - SQL powered - History, versions, and diffs are all queryable via SQL.
- Embedded - Runs as a single SQLite file, persistable anywhere (local FS, S3, your database).
📖 Go to lix.dev for more information →
- AI agent sandboxing - Agents propose changes, humans review and approve before applying.
- Applications with change control - Branch/merge-style reviews, audit trails, and versioning for structured data.
npm install @lix-js/sdk @lix-js/plugin-jsonimport { openLix, selectWorkingDiff, InMemoryEnvironment } from "@lix-js/sdk";
import { plugin as json } from "@lix-js/plugin-json";
// 1) Open a lix with plugins
const lix = await openLix({
environment: new InMemoryEnvironment(),
providePlugins: [json],
});
// 2) Write a file via SQL
await lix.db
.insertInto("file")
.values({
path: "/settings.json",
data: new TextEncoder().encode(JSON.stringify({ theme: "light" })),
})
.execute();
// 3) Query the changes
const diff = await selectWorkingDiff({ lix }).execute();
console.log(diff);- Getting Started Guide - Build your first app with Lix
- Documentation - Full API reference and guides
- Discord - Get help and join the community
- GitHub - Report issues and contribute