Skip to content

algotyrnt/cache0

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cache0

Build Status Language License

cache0 is a lightweight, persistent Key-Value store built from scratch in C++. It is designed to demonstrate core systems programming concepts including memory management, file persistence (RAII), and the Standard Template Library (STL).

Features

  • In-Memory Speed: Uses std::unordered_map for $O(1)$ average time complexity on lookups.
  • Persistence: Automatically saves data to disk on exit and loads on startup (RAII pattern).
  • Safety: Utilizes std::optional to handle missing keys gracefully.
  • Modern C++: Written in C++17.

Getting Started

Prerequisites

  • A C++ compiler supporting C++17 (GCC, Clang, or MSVC).

Directory Structure

Cache0/
├── include/
│   └── cache0.hpp      # The Product (Header-Only Library)
├── src/
│   └── main.cpp        # The Example/Demo file
├── tests/
│   └──test_cache0.cpp  # Unit Tests
├── .gitignore          # The ignore file
├── .github/            # The CI workflow
└── README.md           # Readme File

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

cache0 is a high-performance, lightweight key-value database designed for speed and simplicity.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages