Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lmnzx/lucid
A simple key value database made with C++
https://github.com/lmnzx/lucid
cpp key-value redis rust
Last synced: about 1 month ago
JSON representation
A simple key value database made with C++
- Host: GitHub
- URL: https://github.com/lmnzx/lucid
- Owner: lmnzx
- Created: 2023-04-18T06:54:22.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-10-22T04:21:00.000Z (about 1 year ago)
- Last Synced: 2024-10-14T09:30:13.985Z (2 months ago)
- Topics: cpp, key-value, redis, rust
- Language: C++
- Homepage:
- Size: 146 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# LucidDB: A simple Key-Value Database
Lucid is a high-performance key-value database. It provides fast and reliable storage for your applications. The server is implemented in C++, ensuring efficiency and low latency, while the client component is written in Rust, offering a safe and ergonomic interface for interacting with the database.
### Getting Started
#### Prerequisites- C++ compiler (supporting C++11 and above)
- Rust compiler (stable)
- CMake (for building the C++ server)
- Cargo (for building the Rust client)#### Building the Server
```bash
git clone https://github.com/lmnzx/lucid.git && cd lucid
cmake .
make
```
To run the server (default port:1234)
```bash
./lucid
```#### Building the Client
```bash
cd client
cargo build
```Using client
```
./target/debug/client get l
(nil)
./target/debug/client set l lmn
(nil)
./target/debug/client get l
(str) lmn
./target/debug/client keys
(arr) len=1
(str) l
(arr) end
./target/debug/client set m mln
(nil)
./target/debug/client keys
(arr) len=2
(str) m
(str) l
(arr) end
./target/debug/client del l
(int) 1
./target/debug/client keys
(arr) len=1
(str) m
(arr) end
```