Komi is a lightweight, file-based key-value database written in Go. It provides a simple command-line interface and persists your data in JSON format, making it easy to use and inspect.
- ✅ Simple Key-Value Storage
- 💾 Data persisted to disk as
komi.json
file - 🔄 Data survives restarts (persistent storage)
- 🛠️ Basic command-line interface (CLI) with built-in commands
- 🧾 Human-readable JSON format for easy debugging
Stores a key-value pair.
> SET name Komi
Retrieves the value for the given key.
> GET name
Komi
Lists all keys currently stored.
> LIST
[name]
Deletes the specified key.
> DEL name
Safely exits the program, ensuring all data is written to disk.
> EXIT
- On startup, Komi loads the
komi.json
file if it exists. - All commands are executed in-memory and immediately reflected in the file.
- On exit or during each write operation, Komi persists the current state to
komi.json
.
git clone https://github.com/winnerx0/komi.git
cd komi
go build -o komi
./komi
> SET user yungsxint
> GET user
yungsxint
> LIST
[user]
> DEL user
> EXIT
- Support for nested data structures
- Import/export commands
- In-memory only mode
- Encryption support
MIT License.
Feel free to fork, improve, and contribute! 🚀