dream-path does one thing: it gives every virtual resource path one spelling, so the components that store and look up resources agree on keys. The API is small; the rules are the part that matters, because every crate that uses it depends on them being exactly the same everywhere.
Learn it#
- Start here: normalize a path, keep it as a key, look it up.
- Normalization: the four rules, what they leave alone, and the literal results that follow.
Use it#
- Keys and lookups:
NormalizedPathin maps, borrowed lookups, scratch buffers, and which normalizing function to use where. - Inspecting paths: parent, file name and extension, byte by byte.
- Embedding Luau: giving scripts
@dream/paththrough l3i. - Compatibility and performance: what the version promises, the supported Rust, and what each call costs.