Embedded NoSQL
NuvexaDB
Embedded NoSQL database — one engine, one .nvx file, many hosts
Engine 1.0.6
Embedded NoSQL database for .NET and .NET MAUI, with a Native AOT C ABI for Java, Kotlin, Swift, Flutter, React Native, Python, Node.js, Go, and C++. One portable .nvx file (BSON documents on data pages, AES-256-GCM encryption), and a desktop explorer for Windows, macOS, and Linux.
Install (.NET)
dotnet add package Nuventra.NuvexaDB --source /path/to/unzipped-nugetExtract NuvexaDB-NuGet.zip from the release, then point --source at that folder. Other languages download a language zip plus the matching NuvexaDB-Native-<rid>.zip.
Overview
NuvexaDB is a standalone embedded NoSQL engine: collections, NQL (Nuvexa Query Language), optional AES-256-GCM, one .nvx application file, and an IDE. It runs in-process. It is not a network server. .NET and MAUI call the managed engine directly; every other language loads a Native AOT build of that same engine through nuvexa.h (ABI v2). A file written from Kotlin is the same file Data Studio, a MAUI app, and a Swift host open.
Quick start
using Nuventra.NuvexaDB;
await using var db = NuvexaDatabase.Create("app.nvx", new NuvexaCreateOptions
{
EncryptionKey = "correct-horse"
});
var users = db.GetCollection("users");
await users.InsertAsync(NuvexaDocument.Parse("""{"name":"Ada","age":36}"""));
await users.EnsureIndexAsync("age");
var rows = await db.ExecuteAsync("""db.users.find({ age: { $gte: 21 } }).sort({ name: 1 }).limit(20)""");Capabilities
- One portable .nvx file (BSON documents on 8 KiB pages). Creates and writes always use format 2; format 1 is deprecated and stays readable.
- NQL find / aggregate / update / delete, plus typed LINQ on .NET only.
- Optional AES-256-GCM at rest with Argon2id; fail-closed open on a missing key or tamper.
- One managed engine plus a Native AOT C ABI — language SDKs must not parse pages.
- Nuvexa Data Studio on Windows, macOS, and Linux, plus Visual Studio and VS Code / Cursor editors.
- Exclusive lock per path, concurrent reads, WAL crash recovery, backup / compact / restore.
Product layers
| Layer | Project | Role |
|---|---|---|
| Database core | Nuventra.NuvexaDB | Pages, WAL, B+tree, AES-256-GCM, NQL |
| Access library | Nuventra.NuvexaDB | NuvexaDatabase / NuvexaCollection / AddNuvexaDB |
| Nuvexa Data Studio | Nuventra.NuvexaDB.Explorer | Avalonia desktop IDE on Windows, macOS, and Linux |
| Editor extensions | VS Code + Visual Studio | Custom editor / tool window over ExplorerSession |
| C ABI | Nuventra.NuvexaDB.Native | Native AOT shared library. JSON in, JSON out |
| Language SDKs | bindings/* | Thin overlays over nuvexa.h (ABI v2) |
Supported platforms
Each guide names the exact release zip, an empty project, create/open/close, collection and document CRUD, and how to choose an encryption password.
.NET / .NET MAUI
Managed NuGet. No native zip. Console, MAUI, WPF, WinUI, Avalonia, and Uno.
NuvexaDB-NuGet.zip
Java / Kotlin
Desktop JNA wrapper. Pair the JVM jar with the matching native library.
NuvexaDB-Java-<rid>.zip + NuvexaDB-Native-<rid>.zip
Android
AAR with libnuvexa.so for arm64-v8a. Same Kotlin API as desktop JVM.
NuvexaDB-Android.zip
Swift
Swift package over the C ABI. macOS dylib or iOS Nuvexa.xcframework.
NuvexaDB-Swift-osx-arm64.zip + native / iOS zip
Flutter / Dart
dart:ffi on desktop; xcframework on iOS; jniLibs on Android.
NuvexaDB-Flutter-<rid>.zip + native zip
React Native
Async JS API. Android AAR, iOS xcframework, Node tests via koffi.
NuvexaDB-React-Native-*.zip + Android / iOS packs
Python
ctypes wheel. NUVEXA_NATIVE_LIB is required.
NuvexaDB-Python-<rid>.zip + NuvexaDB-Native-<rid>.zip
Node.js
ESM SDK @nuventra/nuvexadb-node. NUVEXA_NATIVE_LIB is required.
NuvexaDB-Node-<rid>.zip + NuvexaDB-Native-<rid>.zip
Go
cgo wrapper. Linux is the supported interop path.
NuvexaDB-Go-<rid>.zip + NuvexaDB-Native-<rid>.zip
C++
nuvexa.hpp RAII plus nuvexa.h. Link the published shared library.
NuvexaDB-Cpp-<rid>.zip + NuvexaDB-Native-<rid>.zip
Documentation
White paper
Engine, security, performance, how platform libraries are produced, IDEs, and roadmap.
Platform integration
Per-host download, empty project, CRUD, and encryption password practice.
Engine sharing
Why Native AOT, the ABI contract, and the platform map.
Nuvexa Data Studio
Desktop workbench plus Visual Studio and VS Code / Cursor editors.
- NoSQL
- Embedded database
- .nvx
- .NET
- .NET MAUI
- Java
- Kotlin
- Swift
- Flutter
- React Native
- Python
- Node.js
- Go
- C++
- AES-256-GCM
- NQL
Discussion
Comment on NuvexaDB. The thread lives on this component's GitHub repository (nuvyntralabs/NuvexaDB). Sign in with GitHub — Giscus uses Discussions, Utterances uses Issues.