MeshKit
Concepts

Provider Model

The storage protocol shared by local, IPFS, gateway, cluster, and bridge providers.

Providers are the boundary between MeshKit Core and storage infrastructure. Core owns encryption and client semantics; providers persist encrypted bytes and the workflow metadata needed to retrieve, share, audit, sync, and operate those bytes.

Provider Responsibilities

ResponsibilityWhy it matters
Raw encrypted bytesThe encrypted envelope or stream chunks identified by CID
ProofsEvidence about provider writes, reads, algorithms, size, and verification
CapsulesShare records that let authorized recipients open encrypted content
Revocation stateFuture-open controls for share capsules
MailboxesMessage and share delivery queues
Sync jobsDurable retry and offline work records
Vaults and capabilitiesAdvanced access-control records
Logs and healthDiagnostics, doctor checks, and operational evidence

Raw byte storage alone is not enough for every MeshKit workflow.

Provider Types

ProviderPrimary use
LocalDevProviderDeterministic local tutorials and tests
HttpIpfsProviderKubo/IPFS HTTP-backed encrypted byte storage plus MeshKit metadata endpoints
HeliaProviderApp-owned in-process IPFS/UnixFS integration for web or mobile-style runtimes
PinningServiceProviderPinning-backed byte durability
GatewayRetrievalProviderRetrieval through a gateway with CID verification
IpfsClusterProviderCluster-backed operator infrastructure
FallbackProviderOrdered provider failover
Filecoin persistence providerLong-term persistence proof bridge, not direct app storage by itself
Lit-like policy providerAuthorization boundary for policy-bound shares

How Core Uses A Provider

Production Implication

When a guide says "configure a provider," ask which capabilities your workflow needs:

  • File storage needs encrypted bytes and proofs.
  • Sharing needs encrypted bytes, proofs, capsules, and identity metadata.
  • Messages need mailbox records.
  • Sync needs durable sync jobs.
  • Vaults and capabilities need access-control records.
  • Production diagnostics need logs and health checks.

If a provider only stores bytes, features that need metadata must be backed by a MeshKit-compatible metadata service.

Validation Checklist

  • Can the provider write encrypted bytes and read them back by CID?
  • Does it preserve MeshKit proofs?
  • Does it support capsules if sharing is enabled?
  • Does it support mailbox records if messages or share delivery are enabled?
  • Does it support sync jobs if offline/retry flows are enabled?
  • Does mesh.doctor.run() report healthy checks?
  • Does the CLI provider validation prove the same environment your app uses?

Next Steps

On this page