Skip to content

neverinfamous/kv-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

183 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Cloudflare KV Manager

GitHub Docker Pulls License: MIT Version Status Security CodeQL Type Safety

A full-featured management platform for Cloudflare Workers KV, designed for engineering teams and large-scale workloads. Browse namespaces, run bulk operations, search across your entire KV footprint, manage metadata and tags, automate backups to R2, and secure everything with Cloudflare Access Zero Trust.

Live DemoWikiChangelogRelease Article

Tech Stack

Frontend: React | TypeScript | Vite | Tailwind CSS | shadcn/ui

Backend: Cloudflare Workers + KV + D1 + R2 + Durable Objects + Zero Trust

✨ Key Features

  • 🗂️ Namespace & Key Management - Full CRUD operations with cursor-based pagination and Grid/List view toggle
  • 🎨 Color Tags - 27-color palette for visual namespace organization
  • 📊 Dual Metadata System - KV Native (1024 bytes) + D1 Custom (unlimited) metadata
  • 🏷️ Tag Organization - Unlimited tags stored in D1 for easy filtering and search
  • 🔍 Advanced Search - Cross-namespace search by key name, tags, and custom metadata
  • ⚡ Bulk Operations - Process thousands of keys efficiently (delete, copy, TTL, tags)
  • 🔄 Cross-Namespace Migration - Migrate keys between namespaces with TTL preservation, metadata migration, and rollback support
  • 📥 Import/Export - JSON/NDJSON support with collision handling
  • ☁️ R2 Backup & Restore - Cloud-native backup with batch operations
  • 📈 Job History - Complete audit trail with event timelines and advanced filtering
  • 📊 Metrics Dashboard - View KV analytics, operation counts, and latency percentiles
  • 🏥 Health Dashboard - At-a-glance operational status with health score, job history, and backup coverage
  • 🔔 Webhooks - Event-driven HTTP notifications for key operations, bulk jobs, and failures
  • 🔐 Enterprise Auth - Cloudflare Access (Zero Trust) integration
  • 🎨 Modern UI - Dark/light themes, responsive design, built with React + Tailwind CSS

🐳 Docker Quick Start

docker pull writenotenow/kv-manager:latest

docker run -d \
  -p 8787:8787 \
  -e ACCOUNT_ID=your_cloudflare_account_id \
  -e API_KEY=your_cloudflare_api_token \
  -e TEAM_DOMAIN=https://yourteam.cloudflareaccess.com \
  -e POLICY_AUD=your_cloudflare_access_aud_tag \
  --name kv-manager \
  writenotenow/kv-manager:latest

Full Docker Guide → - Docker Compose, Kubernetes, reverse proxy, security

💻 Local Development

Prerequisites: Node.js 24+ (LTS), Wrangler CLI

Install dependencies:

npm install

Initialize D1 database:

npx wrangler d1 execute kv-manager-metadata-dev --local --file=worker/schema.sql

Start dev servers (2 terminals):

Terminal 1 — Frontend:

npm run dev

Terminal 2 — Worker:

npx wrangler dev --config wrangler.dev.toml --local

🚀 Production Deployment

Create D1 database:

wrangler d1 create kv-manager-metadata

Initialize schema (new installation):

wrangler d1 execute kv-manager-metadata --remote --file=worker/schema.sql

Or migrate (existing installation):

wrangler d1 execute kv-manager-metadata --remote --file=worker/migrations/apply_all_migrations.sql

Set secrets:

wrangler secret put ACCOUNT_ID
wrangler secret put API_KEY
wrangler secret put TEAM_DOMAIN
wrangler secret put POLICY_AUD

Build and deploy:

npm run build
wrangler deploy

Production Deployment Guide → - Complete setup with Cloudflare Access configuration

📚 Documentation

User Guides

Technical Documentation

Deployment & Operations

🗄️ Database

KV Manager uses Cloudflare D1 (SQLite) for metadata, tags, audit logs, and job tracking.

Database Schema Documentation →

🎨 User Interface

Modern, responsive design with dark/light theme support. Navigate between:

  • Namespaces - Browse and manage KV namespaces
  • Search - Cross-namespace key search
  • Job History - View bulk operations
  • Audit Log - Operation tracking

🔐 Security

  • Cloudflare Access JWT validation on all production API requests
  • Auth bypassed for localhost development
  • Comprehensive audit logging
  • Protected namespaces hidden from UI

Security Best Practices →

🆘 Troubleshooting

Common issues:

  • Worker not starting - Ensure Wrangler is installed, Node 24+
  • Frontend connection issues - Verify VITE_WORKER_API in .env
  • D1 errors - Reinitialize with worker/schema.sql
  • Search not working - Keys need D1 metadata (auto-indexed when created via UI)

Complete Troubleshooting Guide →

🤝 Contributing

Contributions are welcome! Please see CONTRIBUTING.md for guidelines.

Contributing Guide →

📄 License

MIT License - see LICENSE for details

💬 Support

⭐ Show Your Support

If you find KV Manager useful, please consider giving it a star on GitHub!


Made with ❤️ for the Cloudflare community

About

Self-hosted web app for Cloudflare KV. Browse namespaces, run bulk operations, search across your entire KV footprint, manage metadata and tags, automate backups to R2, and secure everything with Cloudflare Access Zero Trust and GitHub SSO.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Contributors

Languages