Downloads & Packages
MingleDB is distributed as separate official packages for JavaScript, Python, Go, and a
standalone CLI. All of them read and write the same .mgdb file format, so you
can create a database with one runtime and open it with another (using compatible
library versions).
Use this page to choose an entry point: embed a library in your app, script against a file with Python, ship a static Go binary, or explore data interactively with the shell. For API specifics, see Docs; for motivation and feature depth, see MingleDB Features.
mingledb (npm)
The Node.js / JavaScript implementation. Use it in services, CLIs, Electron or other desktop shells, and any project that already runs on npm. It provides user auth, per-collection schemas, MongoDB-style query operators, and full CRUD against a single on-disk database file—no separate database process.
Install: npm install mingledb (or add it to your
package.json). Require or import the client, open or create a
.mgdb path, then call the documented APIs for insert, find, update, and
delete.
Best for: teams on JavaScript or TypeScript who want a small embedded document store without operating MongoDB or Postgres locally.
mingledb-cli
The interactive shell for MingleDB and gomingleDB database files. Point
it at a .mgdb file (or a directory that resolves to one), then run
inserts, queries, schema changes, and auth commands from the terminal—ideal for
debugging, one-off migrations, and learning the query syntax without writing a script.
Dot commands cover help, session control, listing collections and
schemas, auth context, and output formatting (e.g. .help,
.collections, .schema, .auth,
.output). Data commands accept JSON documents and filter
objects for insert, find, update, and delete.
Install: build from the Go module (see the repository README for the
exact go install path and version requirements). You get a single binary
suitable for CI images and offline environments.
Best for: operators and developers who want a REPL on the same files their apps use.
pymingledb
The Python package. It mirrors the same engine capabilities: optional
schema validation, the shared operator set (including regex options where supported),
authentication helpers, and reset()-style utilities for wiping storage in
tests or tooling.
Install: pip install pymingledb or
uv add pymingledb in a virtual environment. Import the client, open your
.mgdb path, and use snake_case methods consistent with Python conventions.
Best for: notebooks, data scripts, small backends, and automation that already lives in the PyPI ecosystem. Database files are interchangeable with the Node and Go ports when versions align.
gomingleDB
The Go module: native API for embedding a file-backed document database in services, CLIs, and static binaries. Same concepts as the other ports—collections, schemas, operators, auth, CRUD—with idiomatic Go types and error handling.
Install: add the module to your module path, e.g.
go get github.com/mingledb/gomingleDB, then construct a database pointing
at your .mgdb file. Use Reset() when you need to clear file
contents and schema state in tests or tooling.
Best for: Go microservices, system tools, and anywhere you want a single dependency tree without CGO or an external DB daemon. Works with databases created by mingledb-cli and the other official libraries.