Introducing Lunchbox: An async filesystem abstraction layer

57 points vpanyam

Lunchbox (https://github.com/vivekpanyam/lunchbox) is an async filesystem interface that closely matches tokio::fs::*.

It provides a common interface that can be used to interact with several types of filesystems. Currently, the only implementation is for a local filesystem, but I plan to add support for other types (e.g a read only filesystem on top of a zip file, in-memory filesystems, etc).

Other interfaces/abstraction layers I found either didn't have async support or weren't comprehensive so I decided to build one. Let me know what you think!

crates.io: https://crates.io/crates/lunchbox

docs: https://docs.rs/lunchbox/latest/lunchbox/