Skip to content

OBJECTSHQ/protocol

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OBJECTS Protocol

Design engineering protocol for modern craftspeople.

CI License Rust Version

What is OBJECTS?

OBJECTS is a protocol for building design apps with identity and sync built in. Developers get a network of users and their data through simple API calls. The protocol handles discovery, connections, and sync regardless of NAT, firewalls, or network topology.

Data is stored locally and synced peer-to-peer over QUIC with automatic hole-punching and relay fallback. Identity and data belong to users, not apps.

Capabilities

  • Identity — Passkey and wallet-based identities with human-readable handles
  • Sync — Content-addressed blob transfer with BLAKE3 verification
  • Metadata — Replicated key-value store with set reconciliation
  • Offline-first — Work independently, sync when connected
  • End-to-end Encrypted — All data and communications encrypted by default

Getting Started

# Clone and build
git clone https://github.com/objectshq/protocol
cd protocol
cargo build --workspace

# Run tests
cargo test --workspace

# Run the CLI
cargo run -p objects-cli -- --help

Repository Structure

crates/
├── objects-identity   # Identity ID derivation, signatures, handle validation
├── objects-data       # Asset, Project, Reference types
├── objects-transport  # Iroh wrapper, ALPN config, peer discovery
└── objects-sync       # Blob + metadata sync

bins/
├── objects-cli        # CLI tool
├── objects-node       # Node daemon
└── objects-registry   # Identity registry service

Contributing

Report a Bug · Request a Feature · Open a Pull Request

License

Licensed under either of Apache License, Version 2.0 or MIT license at your option.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages