Skip to content

feat: integrate Helia as IPFS client replacing Kubo#101

Open
akhileshthite wants to merge 138 commits intomainfrom
helia
Open

feat: integrate Helia as IPFS client replacing Kubo#101
akhileshthite wants to merge 138 commits intomainfrom
helia

Conversation

@akhileshthite
Copy link
Copy Markdown
Collaborator

@akhileshthite akhileshthite commented May 11, 2025

Related: #102

Copy link
Copy Markdown
Member

@tripledoublev tripledoublev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Solid move to Helia!
I have one comment regarding pressure on memory when syncing large files.
Other than that, it looks great!

@RangerMauve
Copy link
Copy Markdown
Contributor

Why the change to make it restart daily?

@tripledoublev
Copy link
Copy Markdown
Member

We wanted to see if that solved the reproviding content error.

It did not.

See this issue for context

@RangerMauve
Copy link
Copy Markdown
Contributor

IMO we should be reproviding every hour or so to account for DHT churn

console.time('Helia Initialization') // Start timing
const datastorePath = path.join(this.options.path, 'datastore')
const blockstorePath = path.join(this.options.path, 'blockstore')
const datastore = new FsDatastore(datastorePath)
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As discussed in ipfs/helia#835 (comment)

I recommend switching to datastore-level and blockstore-level. https://www.npmjs.com/package/datastore-level

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, thanks!
Will do and let you know :)

@2color
Copy link
Copy Markdown

2color commented Aug 20, 2025

Make sure to update the dependencies and use the latest kad-dht: https://github.com/libp2p/js-libp2p/releases/tag/kad-dht-v15.1.11 which includes a fix to a bug where reprovides were inefficient.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request new protocol New protocol to support

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants