enso

Crates.ioenso
lib.rsenso
version0.1.1
created_at2026-01-07 16:39:47.066256+00
updated_at2026-01-07 20:23:39.213233+00
descriptionEnso is an experimental database engine built to explore storage engines, query execution, and networking.
homepagehttps://github.com/aether-flux/enso
repositoryhttps://github.com/aether-flux/enso
max_upload_size
id2028629
size103,120
Amartya Chowdhury (aether-flux)

documentation

https://github.com/aether-flux/enso#readme

README

EnsoDB

EnsoDB is a lightweight, embedded-first database written in Rust, designed for learning, hacking, and building developer-friendly systems from the ground up.

It focuses on:

  • simple internals
  • explicit abstractions
  • clean APIs
  • and a gradual path from local usage → networked database

⚠️ EnsoDB is experimental and currently in early development.


Features

  • File-backed storage engine
  • Schema-based tables
  • Primary key indexing
  • Insert / Select / Delete support
  • Custom SQL-like DSL (in progress)
  • Interactive REPL
  • TCP server for remote connections
  • Rust-first API design

Installation

Linux

curl -fsSL https://raw.githubusercontent.com/aether-flux/ensodb/main/install/linux/install.sh | sh

Windows

Powershell:

iwr -useb https://raw.githubusercontent.com/aether-flux/ensodb/main/install/windows/install.bat | iex

This starts:

  • the EnsoDB REPL
  • a TCP server (default: 127.0.0.1:5432)

Example (REPL)

[test_db] > INSERT INTO users VALUES(1, "user_name");
1 row(s) affected

[test_db] > SELECT * FROM users;
| id | name |
|----|------|
| 1  | user_name |

TCP Server

EnsoDB exposes a simple text-based TCP protocol.

  • One query per line
  • Results returned as text
  • Responses terminated with a protocol EOF marker

This allows external clients (CLI tools, SDKs) to connect.


Motivation

EnsoDB exists to:

  • understand database internals
  • explore Rust system design
  • and build a database feels good to use

License

MIT

Commit count: 0

cargo fmt