Show HN: Minikv – Distributed key-value and object store in Rust (Raft, S3 API)
Hacker News (score: 10)Description
I’m releasing minikv, a distributed key-value and object store in Rust.
What is minikv? minikv is an open-source, distributed storage engine built for learning, experimentation, and self-hosted setups. It combines a strongly-consistent key-value database (Raft), S3-compatible object storage, and basic multi-tenancy. I started minikv as a learning project about distributed systems, and it grew into something production-ready and fun to extend.
Features/highlights:
- Raft consensus with automatic failover and sharding - S3-compatible HTTP API (plus REST/gRPC APIs) - Pluggable storage backends: in-memory, RocksDB, Sled - Multi-tenant: per-tenant namespaces, role-based access, quotas, and audit - Metrics (Prometheus), TLS, JWT-based API keys - Easy to deploy (single binary, works with Docker/Kubernetes)
Quick demo (single node):
git clone https://github.com/whispem/minikv.git cd minikv cargo run --release -- --config config.example.toml curl localhost:8080/health/ready # S3 upload + read curl -X PUT localhost:8080/s3/mybucket/hello -d "hi HN" curl localhost:8080/s3/mybucket/hello
Docs, cluster setup, and architecture details are in the repo. I’d love to hear feedback, questions, ideas, or your stories running distributed infra in Rust!
Repo: https://github.com/whispem/minikv Crate: https://crates.io/crates/minikv
More from Hacker
CLI's completion should know what options you've typed
CLI's completion should know what options you've typed
Show HN: Python SDK – forecasting with foundation time-series and tabular models
Show HN: Python SDK – forecasting with foundation time-series and tabular models We’ve built a Python SDK for running inference on foundation models designed for time-series and tabular data. They are new SOTA models for time-series and tabular tasks and work out of the box. They do not require model training or feature engineering. The link to the GitHub repository is: <a href="https://github.com/S-FM/faim-python-client" rel="nofollow">https://github.com/S-FM/faim-python-client</a>
Show HN: Deterministic PCIe Diagnostics for GPUs on Linux
Show HN: Deterministic PCIe Diagnostics for GPUs on Linux I built a small Linux tool to deterministically verify GPU PCIe link health and bandwidth.<p>It reports: - Negotiated PCIe generation and width - Peak Host→Device and Device→Host memcpy bandwidth - Sustained PCIe TX/RX utilization via NVML - A rule-based verdict derived from observable hardware data only<p>This exists because PCIe issues (Gen downgrades, reduced lane width, risers, bifurcation) are often invisible at the application layer and can’t be fixed by kernel tuning or async overlap.<p>Linux-only: it relies on sysfs and PCIe AER exposure that Windows does not provide.
Show HN: Gotui – a modern Go terminal dashboard library
Show HN: Gotui – a modern Go terminal dashboard library I’ve been working on gotui, a modern fork of the unmaintained termui, rebuilt on top of tcell for TrueColor, mouse support, and proper resize handling. It keeps the simple termui-style API, but adds a bunch of new widgets (charts, gauges, world map, etc.), nicer visuals (collapsed borders, rounded corners), and input components for building real dashboards and tools. Under the hood the renderer’s been reworked for much better performance, and I’d love feedback on what’s missing for you to use it in production.
No other tools from this source yet.