#resources #applications-resources

build pocket-resources

Include resources in your applications

9 releases

Uses old Rust 2015

0.3.2 Jan 2, 2016
0.3.1 Dec 6, 2015
0.2.2 Aug 5, 2015
0.2.1 May 15, 2015
0.1.0 Mar 27, 2015

#3 in #applications-resources

Download history 3640/week @ 2025-10-25 3282/week @ 2025-11-01 2882/week @ 2025-11-08 3499/week @ 2025-11-15 3505/week @ 2025-11-22 3740/week @ 2025-11-29 5921/week @ 2025-12-06 4733/week @ 2025-12-13 2632/week @ 2025-12-20 2603/week @ 2025-12-27 4420/week @ 2026-01-03 16938/week @ 2026-01-10 3558/week @ 2026-01-17 6212/week @ 2026-01-24 8837/week @ 2026-01-31 5525/week @ 2026-02-07

24,670 downloads per month
Used in 31 crates (2 directly)

MIT license

9KB
150 lines

Pocket-resources

Usage

See the demo crate.

Tweak your Cargo.toml to use a build script:

[package]
# ...
build = "build.rs"

[build-dependencies]
pocket-resources = "*"

Create a build.rs file:

extern crate pocket_resources;

fn main() {
    pocket_resources::package(&["resources"]).unwrap();
}

Include the resources where you want:

include!(concat!(env!("OUT_DIR"), "/pocket-resources.rs"));

This creates a public enum named Resource. If you want to name it something else, or if you want it private, you should use a module.

You can then load the resource directly from the enum:

let data: &[u8] = Resource::PathToImagePng.load();

Or load it at runtime:

let data: &[u8] = Resource::from_name("path/to/image.png").unwrap().load();

No runtime deps