Skip to content

AvariAI/storage-lite-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

storage-lite-rs

Lightweight Logos Storage client for Android — Rust implementation.

Purpose

A minimal client-only implementation of Logos Storage for Android. Downloads content from the Logos P2P network without hosting storage or handling uploads.

Scope

Includes:

  • libp2p P2P networking (DHT discovery, block exchange)
  • Content download via streams
  • C FFI for Android JNI integration

Excludes:

  • Storage hosting
  • Upload functionality
  • Local persistence (returns temp file paths)

Build

# Linux host build (for testing)
cargo build

# Android cross-compilation (requires NDK)
cargo-ndk -t arm64-v8a -t armeabi-v7a build --release

API (C FFI)

// Lifecycle
void* storage_lite_new(const char* config_json);
int storage_lite_start(void* ctx, ...);
int storage_lite_stop(void* ctx, ...);
void storage_lite_free(void* ctx);

// Networking
char* storage_lite_peer_id(void* ctx);
int storage_lite_connect(void* ctx, const char* peer_id, ...);

// Download
int storage_lite_download_init(void* ctx, const char* cid, ...);
int storage_lite_download_cancel(void* ctx, const char* cid, ...);

Phase 1 Goals

  1. ✅ Repository scaffolding
  2. ⏳ libp2p client implementation
  3. ⏳ Content manifest decoding
  4. ⏳ Download client with streams
  5. ⏳ C FFI complete
  6. ⏳ Android NDK build verification

License

MIT OR Apache-2.0

About

Lightweight Logos Storage client for Android - Rust implementation

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages