This project is currently in active development.
Expect frequent updates and possible breaking changes!
A minimal, educational database written in modern C++ for learning purposes. Inspired by simple-db-in-c from rosedblabs.
- Simple CLI
- In-memory paging system
- C++17 compatible compiler
- make (or compatible build tool)
- CMake
git clone https://github.com/JosueCordero/minimal-cpp-database.git
cd minimal-cpp-database/mkdir build
cmke -B build/
cd build
make prod./miniCLI database_name.dbThis will start the minimal REPL interface.
MinimalDB follows a modular design:
- Pager – Manages fixed-size pages of memory.
- Buffer – Collects and stores user input.
- CLI – Minimal REPL interface to test DB functions.
Planned components:
- Lexer - Token extraction from the bufffer
- Parser – Statement analysis and validation.
- Executor – Executes parsed instructions.