guts-storage

Crates.ioguts-storage
lib.rsguts-storage
version0.1.0
created_at2025-12-23 10:21:39.36209+00
updated_at2025-12-23 10:21:39.36209+00
descriptionGit object storage for Guts - content-addressed storage for blobs, trees, and commits.
homepagehttps://github.com/AbdelStark/guts
repositoryhttps://github.com/AbdelStark/guts
max_upload_size
id2001247
size158,839
A₿del ∞/21M (AbdelStark)

documentation

README

guts-storage

Content-addressed storage for Git objects in the Guts platform.

Overview

This crate provides storage backends for Git objects (blobs, trees, commits):

  • Memory backend - In-memory storage for testing
  • RocksDB backend - Persistent storage with LRU caching

Features

  • Content-addressed storage (SHA-1 based)
  • Automatic deduplication
  • Optional persistent storage with RocksDB
  • LRU cache for frequently accessed objects

Usage

use guts_storage::{Storage, MemoryStorage, GitObject};

// Create in-memory storage
let storage = MemoryStorage::new();

// Store and retrieve objects
let id = storage.store_blob(b"Hello, world!")?;
let blob = storage.get_object(&id)?;

Features Flags

  • memory (default) - In-memory storage backend
  • rocksdb-backend - RocksDB persistent storage
  • full - All features

Part of Guts

This crate is part of Guts, a decentralized, censorship-resistant alternative to GitHub built on BFT consensus.

License

MIT OR Apache-2.0

Commit count: 0

cargo fmt