Registry / database / spindb

spindb

JSON →
library0.48.1jsnpmunverified

SpinDB (v0.48.1) is a zero-configuration, Docker-free local database management tool that packages 21 database engines (PostgreSQL, MySQL, MariaDB, SQLite, DuckDB, MongoDB, FerretDB, Redis, Valkey, ClickHouse, Qdrant, Meilisearch, CouchDB, CockroachDB, SurrealDB, QuestDB, TypeDB, InfluxDB, Weaviate, TigerBeetle, LibSQL) into a single CLI. It runs directly on macOS, Linux, and Windows without Docker or VMs, providing commands to create, start, connect, run SQL/shell, backup, and clone databases. The tool persists data in ~/.spindb and exposes connection URLs. It is licensed under PolyForm Noncommercial and requires Node.js >=22 and pnpm >=8. Key differentiators include broad engine support, simple CLI, and no external dependencies like Docker.

npm install spindb
INSTALL
IMPORT
SIG · SPINDB
S
spindb
databasejavascriptv0.48.1
Install
Import
Disk
Pass rate
0/ 6
Env Coverage0 / 6
glibc
1822
musl
1822
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
node 18226 runs
build_error
glibc
node 18226 runs
build_error
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

spindb (CLI)
npm install -g spindb
npm install spindb (without -g)
SpinDB is primarily a CLI tool; install globally or use npx.
spindb (programmatic usage not supported)
N/A - no programmatic API
Current version 0.48.1 provides only CLI; there is no npm package export for programmatic use.
spindb create
spindb create mydb --start --connect
spindb mydb create (wrong order)
Verb must come first; flags like --engine specify the database type.

Installs SpinDB globally, creates and connects to a PostgreSQL database, runs a query, and creates a backup.

npm install -g spindb spindb create testdb --engine postgresql --start --connect # Then inside psql: SELECT version(); \q spindb backup testdb --format sql --out backup.sql
spindb --version
Debug
Known issues
gotchaNode.js 22+ is required; older versions cause cryptic errors on install.
fix
Upgrade Node.js to >=22 (LTS).
affects: <0.48
deprecatedFerretDB v2 requires macOS/Linux; v1 on Windows uses plain PostgreSQL backend (not a full MongoDB replacement).
fix
On Windows, use FerretDB v1 explicitly with --ferretdb-version 1, or use MongoDB engine instead.
affects: >=0.40
gotchaData persists in ~/.spindb/; accidental deletion of this directory removes all databases.
fix
Backup regularly; use spindb backup before deleting ~/.spindb.
affects: >=0.1
breakingCLI commands changed in v0.30.0: 'spindb run' now requires -c or file argument; inline scripts removed.
fix
Use 'spindb run mydb -c "SQL"' instead of 'spindb run mydb SQL'.
affects: >=0.30
gotchaClickHouse and LibSQL on Windows require WSL; native Windows is not supported.
fix
Install WSL and run the spindb commands inside WSL, or use a different engine.
affects: >=0.1
deprecatedLicense is PolyForm Noncommercial; commercial use requires a separate license.
fix
Contact the author for commercial licenses; do not use in paid products without permission.
affects: >=0.1
gotchaGlobal install may require sudo on macOS/Linux; non-sudo installs may break PATH.
fix
Use 'npm install -g spindb' without sudo, or configure npm prefix to user directory.
affects: >=0.1
Errors
Common errors & fixes
Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/spindb'
Installing global npm packages without proper sudo or prefix.
fix
Run 'sudo npm install -g spindb' or configure npm prefix: 'npm config set prefix ~/.npm-global' then add to PATH.
spindb: command not found
Global npm module not added to PATH.
fix
Add npm global bin to PATH: export PATH=$(npm bin -g):$PATH (Linux/macOS) or use npx spindb.
Error: This version of spindb requires Node.js >=22
Outdated Node.js version.
fix
Upgrade Node.js to v22 or later; use nvm or download from nodejs.org.
Error: listen EADDRINUSE: address already in use :::5432
Default PostgreSQL port 5432 is already occupied.
fix
Use 'spindb create mydb --port 5433' to assign a different port, or stop the existing service on 5432.
Error: (FetchError) request to https://github.com/... failed, reason: connect ECONNREFUSED
Network issue or GitHub blocked; SpinDB downloads database binaries from GitHub.
fix
Check internet connection or proxy; set HTTP_PROXY if behind corporate firewall.
Upgrade
Version history
0.48.1latest on npm
Audit
Dependencies
noderequiredRequires Node.js >=22 for runtime
Agent activity
15 hits · last 30 days
node
12
Meta
2
Resources