{"repo":"itsfuad/FurrDB","free":true,"listed":false,"github":"https://github.com/itsfuad/FurrDB","clone":"git clone https://github.com/itsfuad/FurrDB.git","description":"FurrDB is a minimal, Redis-inspired in-memory key-value store written in pure Go.","language":"Go","stars":12,"topics":["database","golang","in-memory","in-memory-database"],"license":"GPL-3.0","category":"databases-storage","readme_excerpt":"🦊 FurrDB FurrDB is a minimal, Redis-inspired in-memory key-value store written in pure Go. - Persistent disk storage - Built-in script registration and execution (by hash) - Simple custom command protocol over TCP - No external libraries or dependencies Designed to be lightweight, scriptable, and fast — without the bulk of Redis. --- 📌 Features - [x] In-memory key-value store - [x] TCP server with custom text protocol - [x] Command set: SET , GET , DEL , EXISTS , PING , EVAL , REGSCRIPT , RUNSCRIPT , EXPIRE , TTL , SNAPSHOT - [x] Append-only persistence log - [x] Script registration and hash-based invocation - [x] Basic CLI client - [x] REPL (local interactive shell) - [x] TTL expiration - [x] Snapshot-based persistence - [x] Scripting sandbox (embedded DSL: LET, IF, END) --- --- 🧠 Architecture Overview 1. Core Components 📦 db/ - In-Memory Store - Simple map[string]string store - Thread-safe operations - Dispatches commands based on input tokens 💾 engine/ - Persistence Engine - Append-Only File (AOF) log of all write commands - Loads AOF on startup to recover state - Periodic flush support 🌐 server/ - TCP Protocol Handler - Accepts client connections on a configurable port - Parses line-based commands, e.g.: - Routes commands to db package 📜 script/ - Script Manager - Accepts scripts (as text) - Stores in-memory with a SHA256 hash key - Can run stored scripts by hash with arguments - Scripts can access DB via pre-defined keywords and syntax 👨‍💻 client/ - CLI Tool - C","default_branch":null,"files":null,"tree":[],"storefront":"/r/itsfuad","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/itsfuad/FurrDB/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}