#tree #ipfs #node #unix-fs #file-tree #block #unix-f

ipfs-unixfs

UnixFs tree support

3 releases (breaking)

0.2.0 Sep 23, 2020
0.1.0 Aug 14, 2020
0.0.1 Jun 18, 2020

#6 in #unix-fs

Download history 26509/week @ 2024-11-16 27395/week @ 2024-11-23 20688/week @ 2024-11-30 30728/week @ 2024-12-07 21611/week @ 2024-12-14 6386/week @ 2024-12-21 11103/week @ 2024-12-28 20989/week @ 2025-01-04 32154/week @ 2025-01-11 27563/week @ 2025-01-18 25858/week @ 2025-01-25 28823/week @ 2025-02-01 29648/week @ 2025-02-08 33837/week @ 2025-02-15 26408/week @ 2025-02-22 28435/week @ 2025-03-01

123,916 downloads per month
Used in 14 crates (3 directly)

MIT/Apache

215KB
4.5K SLoC

ipfs-unixfs

Goals

  • blockstore API independent way to traverse the merkledag
    • the core read API does not deal with loading blocks
    • instead access to interesting Cids is given

Status

  • unfiltered walking of known unixfs trees
  • creation of balanced file trees
  • creation of non HAMT-sharded directory trees

See the docs at https://docs.rs/ipfs-unixfs.

License

MIT or APL2.


lib.rs:

ipfs-unixfs: UnixFs tree support in Rust.

The crate aims to provide a blockstore implementation independent of the UnixFs implementation by working on slices and not doing any IO operations.

The main entry point for extracting information and/or data out of UnixFs trees is ipfs_unixfs::walk::Walker. To resolve IpfsPath segments over dag-pb nodes, ipfs_unixfs::resolve should be used.

Dependencies

~3–10MB
~87K SLoC