Developer Guide

Welcome to the OverDrive-DB developer portal. This guide will help you integrate the World's Fastest Embeddable Hybrid Database into your applications.

Note: OverDrive-DB is serverless. Your database is stored in a single .odb file, much like SQLite, but optimized for JSON documents.

Global Installation

Choose your preferred language and install the SDK from your native registry.

Go
Rust
Node.js
Python
Java

The Go SDK is fully featured and easy to set up.

go get github.com/ALL-FOR-ONE-TECH/OverDrive-DB_SDK/go
cargo add overdrive-db
npm install overdrive-db
pip install overdrive-db

Add the following dependency to your pom.xml:

<dependency>
  <groupId>com.afot</groupId>
  <artifactId>overdrive-db</artifactId>
  <version>1.0.1</version>
</dependency>

Go SDK Guide

We've optimized the Go experience to feel native to Gophers. It uses the highest performance CGO bindings for maximum throughput.

Initialize Database

import "github.com/ALL-FOR-ONE-TECH/OverDrive-DB_SDK/go"

db, err := overdrive.Open("data.odb")
if err != nil {
    panic(err)
}
defer db.Close()

Insert & Query

db.CreateTable("users")

user := map[string]interface{}{
    "name": "Karthik",
    "role": "Lead Developer",
}

id, _ := db.Insert("users", user)

// SQL Power
results, _ := db.Query("SELECT * FROM users WHERE role = 'Lead Developer'")

Rust SDK Guide

The Rust SDK is our reference implementation, offering zero-cost abstractions and memory safety.

use overdrive_db::OverDriveDB;

let mut db = OverDriveDB::open("data.odb").unwrap();
db.create_table("logs").unwrap();

db.insert("logs", &json!({ "status": "ok", "code": 200 })).unwrap();

SQL Queries

OverDrive-DB's unique "Hybrid" engine allows you to run SQL directly on your JSON documents.

SELECT * 
FROM users 
WHERE profile.age > 25 
AND settings.notifications = true 
LIMIT 10;

Supported operations: SELECT, WHERE, INSERT, UPDATE, DELETE, COUNT, MIN, MAX, AVG.