Every client should make the same strengths approachable: durable local writes, columnar reads, hybrid indexes, DataFusion SQL, Arrow-friendly data movement, encryption, and daemon-backed multi-process access when needed.
Tier 1 directRS
Rust
Direct crate access for applications that want the core engine close to the code. The best fit for systems work, embedded products, test harnesses, and anything that benefits from Rust-native ownership of the data path.
Installcargo add mongreldb-core
Open repository
Tier 1 NAPITS
TypeScript
The native NAPI path follows the better-sqlite3 model: in-process, no HTTP hop, typed object/method calls, DataFusion SQL, Arrow IPC results, and lossless BigInt row ids, counts, and epochs.
Installnpm install @visorcraft/mongreldb-kit
Open kit
Tier 1 PyO3PY
Python
Python gets the embedded engine through PyO3, making it a natural fit for local analytics, AI retrieval experiments, data prep scripts, and tools that need a real database without operating another service.
Installpip install mongreldb-kit
Open kit
Tier 1 C ABIC
C
C projects embed the engine in-process through the C ABI, linking a prebuilt libmongreldb and libmongreldb_kit for SQL execution, typed queries, transactions, and migrations. A libcurl-backed HTTP client is included for daemon deployments.
InstallCMake (links libcurl) or prebuilt libmongreldb
Open client
Tier 1 C ABIC++
C++
A header-only C++ client embeds the engine through the same C ABI, with prebuilt libmongreldb and libmongreldb_kit for native SQL, queries, and migrations. The header-only libcurl client covers the daemon path.
InstallCMake (header-only, links libcurl) or prebuilt libmongreldb
Open client
Tier 1 P/InvokeC#
C# / .NET
The Visorcraft.MongrelDB.Native package embeds the engine in-process through P/Invoke over the prebuilt native libraries, bundling runtimes/<rid>/native/ for six platform targets. The HTTP Visorcraft.MongrelDB package stays pure-managed for daemon deployments.
Installdotnet add package Visorcraft.MongrelDB.Native
Open client
Tier 1 JNIJV
Java
Java embeds the engine through the mongreldb-jni shim, distributed as a fat JAR with all six platform natives bundled. The NativeDB class runs SQL, migrations, and queries in-process; the HTTP MongrelDB class covers the daemon path.
InstallMaven/Gradle + libmongreldb_jni
Open client
Tier 1 JNIKT
Kotlin
Kotlin embeds the engine through the same mongreldb-jni shim, with a NativeDB surface that mirrors the Java class for SQL, migrations, and queries. The HTTP client keeps daemon deployments idiomatic.
InstallGradle + libmongreldb_jni
Open client
Tier 1 JNISC
Scala
Scala embeds the engine through the mongreldb-jni shim alongside Java and Kotlin, with a NativeDB surface for in-process SQL, migrations, and queries. The pure-JVM HTTP client covers the daemon path.
Installsbt + libmongreldb_jni
Open client
Tier 2 HTTPCL
Clojure
Clojure apps reach the daemon through a small clj-http-backed client, keeping the database process separate from JVM application code.
Installdeps.edn / Leiningen
Open client
Tier 2 HTTPCR
Crystal
Crystal gets a pure-language HTTP::Client path to the daemon for services and tools that want MongrelDB without embedding the Rust engine.
Installshards add mongreldb
Open client
Tier 2 HTTPD
D
D applications can use the HTTP client to reach a warm MongrelDB daemon while avoiding native storage linkage in the application runtime.
Installdub add mongreldb
Open client
Tier 2 HTTPDT
Dart
Dart tools and services can use the HTTP client to keep MongrelDB behind a stable daemon process.
Installdart pub add mongreldb
Open client
Tier 2 HTTPEX
Elixir
Elixir applications can keep BEAM processes focused on application work while MongrelDB runs behind HTTP as the local database service.
Install{:mongreldb, "~> 0.1"} in mix.exs
Open client
Tier 2 HTTPER
Erlang
Erlang gets an httpc-backed client for BEAM releases that want MongrelDB behind a daemon boundary, keeping the storage engine out of the OTP runtime.
Installrebar3
Open client
Tier 2 HTTPF#
F#
F# reaches the daemon through an HttpClient-backed client, pairing cleanly with functional .NET services and scripts.
Installdotnet add reference
Open client
Tier 2 HTTPFN
Fortran
Fortran talks to the daemon over a curl-backed client, fitting scientific and HPC workflows that want a real database without embedding native storage.
Installfpm
Open client
Tier 2 HTTPGL
Gleam
Gleam gets a gleam_http client for the BEAM-native crowd that wants a typed, pure-language path to a warm daemon.
Installgleam add mongreldb
Open client
Tier 2 HTTPGO
Go
Use Go for services, CLIs, and worker fleets while talking to the daemon over a pure-language net/http client. Good for deployment targets where native database bindings add friction.
Installgo get github.com/visorcraft/mongreldb-go
Open client
Tier 2 HTTPJL
Julia
Julia gets daemon-backed access through HTTP.jl for analytics and research code that wants MongrelDB features without hosting the engine in-process.
Install] add MongrelDB
Open client
Tier 2 HTTPKN
Kotlin/Native
Kotlin/Native compiles to native machine code with no JVM, talking to the daemon through a ktor-client-curl HTTP client for cross-platform tools and services.
InstallGradle (compiles to native, no JVM)
Open client
Tier 2 HTTPLU
Lua
Lua gets a small lua-curl-backed client for scripts, tools, and embedded runtimes that should avoid linking the storage engine directly.
Installluarocks install mongreldb
Open client
Tier 2 HTTPMJ
Mojo
Mojo reaches the daemon through an http-backed client, fitting AI and systems code that wants MongrelDB access without native storage linkage.
Installmagic add mongreldb
Open client
Tier 2 HTTPNM
Nim
Nim gets a pure-language path to the daemon, useful for command-line tools, services, and experiments that need MongrelDB access without embedding the Rust engine.
Installnimble install mongreldb
Open client
Tier 2 HTTPOB
Objective-C
Objective-C apps reach the daemon through an NSURLSession-backed client for macOS and iOS tools that want a separately managed database service.
InstallCMake (links Foundation)
Open client
Tier 2 HTTPOD
Odin
Odin talks to the daemon over a pure-language net/http client, fitting data-oriented tools that want MongrelDB without native bindings.
Installodin build
Open client
Tier 2 HTTPPL
Perl
Perl scripts and services use an HTTP::Tiny-backed client for SQL, query routes, and operational access without native storage linkage.
Installcpanm MongrelDB
Open client
Tier 2 HTTPPHP
PHP
Bring MongrelDB to PHP web applications and workers through a cURL-backed client. The package stays simple to install while the server keeps the database process warm.
Installcomposer require visorcraft/mongreldb-php
Open client
Tier 2 HTTPPS
PowerShell
PowerShell reaches the daemon through Invoke-RestMethod, fitting automation, gluing, and ops tooling that wants a real database behind a module.
InstallImport-Module mongreldb
Open client
Tier 2 HTTPR
R
R users reach MongrelDB through a libcurl-backed client for local analytics, retrieval workflows, and repeatable data tooling.
Installinstall.packages("mongreldb")
Open client
Tier 2 HTTPRB
Ruby
Give Ruby apps access to MongrelDB’s SQL, native query routes, and daemon-managed warm state through a net/http client without requiring native database bindings inside the application process.
Installgem install mongreldb
Open client
Tier 2 HTTPSW
Swift
Use Swift Package Manager to connect Swift tools and applications to a MongrelDB daemon over URLSession, keeping the database engine as a separately managed local service.
InstallSwift Package Manager
Open client
Tier 2 HTTPTC
Tcl
Tcl scripts reach the daemon through the built-in http package, fitting automation, tooling, and legacy glue that wants a real database behind a warm process.
Installpackage require mongreldb
Open client
Tier 2 HTTPV
V
V talks to the daemon over a pure-language net.http client, fitting fast-compiling tools and services that want MongrelDB without native bindings.
Installv install
Open client
Tier 2 HTTPZG
Zig
For Zig projects, a std.http-backed client keeps integration straightforward while still exposing the same daemon-backed database surface.
Installzig fetch
Open client