[🎯 Target v2.17.1+] Filebase Integration as Custom IPFS Provider and Future-proofing IPFS Expansion (no branch exists) #3147
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description:
This PR enhances the Guardian project by introducing the Filebase IPFS provider and establishing a testing suite for IPFS configurations. It facilitates the addition of new IPFS providers without requiring a full rebuild of the Guardian system and outlines a streamlined process for future expansions. Key updates include:
Updated Readme Snippets:
Setting up IPFS Filebase Bucket:
Configure the Filebase IPFS provider in
./configs/.env.develop.guardian.system
with your generated Firebase Bucket Token forIPFS_STORAGE_API_KEY
and setIPFS_PROVIDER
to "filebase". For more, refer to Filebase's IPFS Pinning Service API documentation.Implementing and Testing Custom IPFS Providers:
Our workflow is designed to easily integrate new IPFS providers. Set up your environment variables, run
yarn test:ipfs
in the "worker-service" directory for validation, and extend the "IpfsProvider" enum with your provider's logic. We recommend an interface-based approach for enhanced maintainability.Notes for reviewer:
Please review the updated documentation and README for a comprehensive guide on integrating the new IPFS provider. This update primarily addresses a minor version transition from v2.17.0 to v2.17.1, particularly focusing on changes in token authentication mechanisms from v2.18.0 onwards. The code should forward-compatible up to v2.20.1+, with minor modification.
However, this PR stops short of implementing the scaling recommendations for IPFS providers. It instead proposes a framework and best practices for future integrations, with a focus on:
As the Guardian project continues to evolve with the addition of more IPFS clients, the proposed methodology aims to offer a scalable and time-efficient integration solution.
Checklist