@helia/car provides import and export methods to read/write Car files to Helia's blockstore.
@helia/car
import
export
See the Car interface for all available operations.
By default it supports dag-pb, dag-cbor, dag-json and raw CIDs, more esoteric DAG walkers can be passed as an init option.
dag-pb
dag-cbor
dag-json
raw
import { createHelia } from 'helia'import { unixfs } from '@helia/unixfs'import { car } from '@helia/car'import { CarWriter } from '@ipld/car'import { Readable } from 'node:stream'import nodeFs from 'node:fs'const helia = createHelia({ // ... helia config})const fs = unixfs(helia)// add some UnixFS dataconst cid = await fs.addBytes(fileData1)// export it as a Carconst c = car(helia)const { writer, out } = await CarWriter.create(cid)// `out` needs to be directed somewhere, see the @ipld/car docs for more informationReadable.from(out).pipe(nodeFs.createWriteStream('example.car'))// write the DAG behind `cid` into the writerawait c.export(cid, writer) Copy
import { createHelia } from 'helia'import { unixfs } from '@helia/unixfs'import { car } from '@helia/car'import { CarWriter } from '@ipld/car'import { Readable } from 'node:stream'import nodeFs from 'node:fs'const helia = createHelia({ // ... helia config})const fs = unixfs(helia)// add some UnixFS dataconst cid = await fs.addBytes(fileData1)// export it as a Carconst c = car(helia)const { writer, out } = await CarWriter.create(cid)// `out` needs to be directed somewhere, see the @ipld/car docs for more informationReadable.from(out).pipe(nodeFs.createWriteStream('example.car'))// write the DAG behind `cid` into the writerawait c.export(cid, writer)
import { createHelia } from 'helia'import { unixfs } from '@helia/unixfs'import { car } from '@helia/car'import { CarReader } from '@ipld/car'import { Readable } from 'node:stream'import nodeFs from 'node:fs'const helia = createHelia({ // ... helia config})// import the carconst inStream = nodeFs.createReadStream('example.car')const reader = await CarReader.fromIterable(inStream)await c.import(reader) Copy
import { createHelia } from 'helia'import { unixfs } from '@helia/unixfs'import { car } from '@helia/car'import { CarReader } from '@ipld/car'import { Readable } from 'node:stream'import nodeFs from 'node:fs'const helia = createHelia({ // ... helia config})// import the carconst inStream = nodeFs.createReadStream('example.car')const reader = await CarReader.fromIterable(inStream)await c.import(reader)
Generated using TypeDoc
@helia/car
providesimport
andexport
methods to read/write Car files to Helia's blockstore.See the Car interface for all available operations.
By default it supports
dag-pb
,dag-cbor
,dag-json
andraw
CIDs, more esoteric DAG walkers can be passed as an init option.Example: Exporting a DAG as a CAR file
Example: Importing all blocks from a CAR file