Skip to content

Conversation

@luisawatkins
Copy link
Contributor

Closes #23

Implement StorachaStorage CustomStorage for hybrid web/web3 apps

  • Add StorachaStorage implementation with auto-load from Storacha Space
  • Support heads and indexes storage (manifest read from /orbitdb/address)
  • Enable hybrid SSR → P2P mode switching for PWAs
  • Add comprehensive test suite for storage operations
  • Add demo examples for basic usage, OrbitDB integration, and hybrid mode
  • Support both credential and UCAN authentication
  • Works with ComposedStorage for memory + Storacha persistence

NiKrause and others added 24 commits October 15, 2025 13:29
- Move documentation files to dedicated docs/ folder
- Remove debug and temporary files from examples/svelte/ucan-delegation/
- Add new utility modules (logger.js, test-utils.js)
- Update core library files and Svelte components
- Remove package lock files for cleaner dependency management
- Update README.md and package.json
…ntries

BREAKING CHANGE: Improved restore performance by only joining HEAD entries
during database reconstruction. OrbitDB automatically traverses the log chain
from heads, making it unnecessary to iterate through all entries.

Changes:
- Optimized restoreDatabaseFromSpace() to only join HEAD entries
- Added better logging showing HEAD count vs total entries
- Fixed reconstructWithoutManifest() to properly merge dbConfig with inferred type
- Cleaned up example files by removing unused config options

Performance Impact:
- Before: Iterated through all N log entries (e.g., 427 entries)
- After: Only processes HEAD entries (typically 1-27 heads)
- Result: Significantly faster restore, especially for large databases

The optimization maintains full functionality while providing clearer
feedback about the restore process. Multiple heads are properly handled
for databases with concurrent operations or replication branches.
* fix: improve UCAN authorization error handling and display

* feat(tests): add Playwright e2e to verify UCAN auth failures surface correct UI errors, fix lint issues in bridge

* missing libs for StorachaTest.svelte

* refactor: use root orbitdb-storacha-bridge package in all examples…

* fix: ignore dev-dist and e2e directories in eslint

---------

Co-authored-by: Nico Krause <post@nicokrause.com>
* feat: implement structured logging framework with Pino

* Add timestamped backup infrastructure…

* Add CAR backup/restore with direct CID restore and CI integration…

* Fix ESLint errors in CAR backup code…

* Remove dist/ folder from git tracking…

---------

Co-authored-by: Pranav Konde <pranavk@comsenseconsulting.com>
Co-authored-by: Nico Krause <post@nicokrause.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Create a OrbitDB CustomStorage to a Storacha Space!

3 participants