static-files

Crates.iostatic-files
lib.rsstatic-files
version0.2.4
sourcesrc
created_at2021-03-18 20:18:19.46573
updated_at2024-07-09 20:42:21.765156
descriptionThe library to help automate static resource collection.
homepagehttps://github.com/static-files-rs/static-files
repositoryhttps://github.com/static-files-rs/static-files
max_upload_size
id370724
size30,560
Alexander Korolev (kilork)

documentation

README

static-files - the library to help automate static resource collection

Legal

Dual-licensed under MIT or the UNLICENSE.

Features

  • Embed static resources in executuble
  • Install dependencies with npm package manager
  • Run custom npm run commands (such as webpack)
  • Support for npm-like package managers (yarn)
  • Change detection support to reduce compilation time

Usage

Create folder with static resources in your project (for example static):

cd project_dir
mkdir static
echo "Hello, world" > static/hello

Add to Cargo.toml dependency to static-files:

[dependencies]
static-files = "0.2"

[build-dependencies]
static-files = "0.2"

Add build.rs with call to bundle resources:

use static_files::resource_dir;

fn main() -> std::io::Result<()> {
    resource_dir("./static").build()?;
}

Include generated code in main.rs:

include!(concat!(env!("OUT_DIR"), "/generated.rs"));

fn main() -> std::io::Result<()> {
    let generated = generate(); // <-- this function is defined in generated.rs
    ...
}
Commit count: 24

cargo fmt