Skip to content

Commit 3e94755

Browse files
zakarumychozkriff
andauthored
Newsletter 10: Add goods assets library (#141)
* Add section about `goods` assets library * Make a list. Limit line length to 80 chars * Newsletter 10: Goods: fmt tweaks Co-authored-by: Andrey Lesnikov <ozkriff@gmail.com>
1 parent 9403336 commit 3e94755

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

content/posts/newsletter-010/index.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,30 @@ If needed, a section can be split into subsections with a "------" delimiter.
5858

5959
## Library & Tooling Updates
6060

61+
### [Goods]
62+
63+
Asset management library that aims to be easy to use, flexible, extensible
64+
and support virtually any use-case:
65+
66+
* Need to load compund asset that pulls subassets without boilerplate on
67+
call-site? All heavy-lifting for loading subassets can be done in `Format`
68+
implementation for the asset type.
69+
* Asset is made of GPU resources and access to graphics device is required to
70+
create asset instance? `Asset::build` receives reference to `Asset::Context`.
71+
* Targeting browser? `goods` support building for wasm
72+
and even bundle Fetch API based asset data source.
73+
* Target doesn't have `std`? Core types and traits are `no_std` compatible.
74+
But `alloc` is required.
75+
* Looking to keep things tidy and fast to build? Clean build of the crate
76+
with no features takes about ~3s on modern CPU.
77+
* Integration with `serde` ecosystem? Special `Format` implementations can load
78+
assets whose representation implement `serde::de::DeserializeOwned`.
79+
Crate includes `Format`s for loading assets from JSON, YAML and RON docuemts.
80+
81+
Crate's repo has few examples with nearly each line of the code explained.
82+
83+
[Goods]: https://crates.io/crates/goods
84+
6185
## Popular Workgroup Issues in Github
6286

6387
<!-- Up to 10 links to interesting issues -->

0 commit comments

Comments
 (0)