Overview

AxioDB

The problem#

SQLite is great, but its native C bindings cause real deployment pain in JavaScript projects:

  • electron-rebuild on every Electron update
  • Platform-specific builds (Windows .node files are not Mac .node files)
  • SQL strings instead of JavaScript objects
  • Schema migrations every time your data model changes
  • node-gyp compilation headaches

Plain JSON files avoid all that, but they have no querying, no caching, and no indexing — they stop scaling past a few thousand records. MongoDB solves the query and caching problem, but it needs a separate server process, which is overkill for a desktop app, a CLI tool, or an embedded system.

The solution#

AxioDB combines the parts of each option that actually matter for an embedded use case:

  • Works everywhere Node.js runs — no rebuild, no native dependencies
  • MongoDB-style queries: { age: { $gt: 25 } }
  • Schema-less JSON documents — no migrations
  • Built-in InMemoryCache with automatic invalidation
  • Multi-core parallelism with Worker Threads
  • Built-in web GUI at localhost:27018
  • AxioDBCloud — optional TCP remote access for Docker and cloud deployments

Is it a fit for you?#

AxioDB isn't competing with PostgreSQL or MongoDB. It's for when you need a database embedded in your app — no server setup, no native dependencies. When you outgrow it, migrating to PostgreSQL or MongoDB is the expected next step.

Start here#

Benchmarks#

Tested March 2026, Ubuntu Linux, Node.js v20+, 10,000-document dataset:

Operation Time
Insert single ~3ms
InsertMany (10) ~87ms
Indexed read ~2ms
findOne ~1ms
UpdateOne ~8ms
DeleteOne ~3ms
Transaction insert ~23ms

See Comparisons for the full breakdown against SQLite and JSON files.

Updated

Was this page helpful?