> ## Content Index
> Fetch the complete content index at: https://savasayik.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# badger-gui: A Cli Gui I Built for My Own Workflow
- URL: https://savasayik.com/badger-gui-a-cli-gui-i-built-for-my-own-workflow/
- Published: 2026-02-21T14:49:05.000Z
- Updated: 2026-02-21T14:49:05.000Z
- Description: I built badger-gui to remove the friction of writing temporary debug scripts for BadgerDB. It’s a lightweight, terminal-first CLI GUI that makes inspecting and managing embedded databases fast and practical.
- Author: Savas AYIK
- Tags: BadgerDB, Go, Golang, Open Source, Cli

I’ve been using BadgerDB in several projects over the years. Its embedded design, performance characteristics, and seamless integration with Go make it a strong choice for service-level storage and state management.

But there was one recurring friction point. Inspecting the data.

Whenever I needed to quickly check what a key actually contained, explore a prefix, validate a JSON payload, or investigate something in production, I found myself writing small Go scripts:

- Open DB
- Start transaction
- Iterate keys
- Print values
- Close

Doing this once is fine. Doing it repeatedly becomes unnecessary overhead. At some point I realized this wasn’t a database problem — it was a tooling gap. That’s how **badger-gui** started.

[](https://asciinema.org/a/J4M30sOp6pAQSNu6?ref=savasayik.com)

## Why I Built It

I didn’t want a heavy web dashboard. I didn’t want to introduce another service layer. I didn’t want abstraction over abstraction.

I wanted something:

- Lightweight
- Terminal-first
- Embedded
- Safe
- Fast

Something that speaks directly to Badger and stays out of the way. So I built it for myself. Over time, it became part of my daily workflow.

## What is badger-gui?

**badger-gui** is a lightweight CLI GUI for inspecting and managing BadgerDB databases directly from the terminal.

It is:

- Written in Go
- Fully embedded (no external services required)
- Cross-platform (Linux, macOS, Windows)
- Designed for large keyspaces

It respects Badger’s transaction model and works directly with its iterator mechanisms.

## What It Enables

With badger-gui, you can:

- Browse keys with instant filtering
- View values in `text`, `json`, `hex`, and `base64` formats
- Edit values inline and save safely
- Delete keys by pattern
- Analyze key counts by prefix

Most importantly, it removes the need to constantly write temporary debugging scripts. It reduces friction. And in engineering, reducing friction compounds over time.

## Why Open Source?

I built this tool for my own needs. But if you use Badger, there’s a high chance you’ve faced the same problem. Instead of keeping it internal, I decided to share it with the community. Small tools often have outsized impact — especially when they remove daily developer friction. BadgerDB is a powerful embedded engine. badger-gui is simply a practical terminal panel for it. 

You can access the project here:

👉 [**https://github.com/savasayik/badger-gui**](https://github.com/savasayik/badger-gui?ref=savasayik.com)

[ ![](https://img.shields.io/badge/GitHub-Repository-black?logo=github) ](https://github.com/savasayik/badger-gui?ref=savasayik.com) [ ![](https://img.shields.io/github/stars/savasayik/badger-gui?style=social) ](https://github.com/savasayik/badger-gui/stargazers?ref=savasayik.com) 

If you use Badger, give it a try. Feedback and contributions are welcome.