{"id":15634924,"url":"https://github.com/sof3/include-flate","last_synced_at":"2025-04-12T22:28:45.106Z","repository":{"id":52367988,"uuid":"202128969","full_name":"SOF3/include-flate","owner":"SOF3","description":"A variant of include_bytes!/include_str! with compile-time deflation and runtime lazy inflation","archived":false,"fork":false,"pushed_at":"2023-12-27T19:57:29.000Z","size":1131,"stargazers_count":127,"open_issues_count":9,"forks_count":7,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-10-29T23:23:38.654Z","etag":null,"topics":["assets","compression","include","resource-management","rust","rust-macro"],"latest_commit_sha":null,"homepage":"https://docs.rs/include-flate","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SOF3.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-08-13T11:23:18.000Z","updated_at":"2024-05-20T11:37:14.000Z","dependencies_parsed_at":"2022-09-16T04:12:17.126Z","dependency_job_id":"cb7a6a2b-c50e-467d-b408-c25d714e257f","html_url":"https://github.com/SOF3/include-flate","commit_stats":{"total_commits":39,"total_committers":7,"mean_commits":5.571428571428571,"dds":"0.20512820512820518","last_synced_commit":"4d79700ba0a67b764700f591c0ab8635b6ba5bac"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SOF3%2Finclude-flate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SOF3%2Finclude-flate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SOF3%2Finclude-flate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SOF3%2Finclude-flate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SOF3","download_url":"https://codeload.github.com/SOF3/include-flate/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248639292,"owners_count":21137818,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["assets","compression","include","resource-management","rust","rust-macro"],"created_at":"2024-10-03T10:59:05.062Z","updated_at":"2025-04-12T22:28:45.073Z","avatar_url":"https://github.com/SOF3.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# include-flate\n[!![CI](https://github.com/SOF3/include-flate/workflows/CI/badge.svg)](https://github.com/SOF3/include-flate/actions)\n[![crates.io](https://img.shields.io/crates/dv/include-flate.svg)](https://docs.rs/include-flate)\n[![docs.rs](https://docs.rs/include-flate/badge.svg)](https://docs.rs/include-flate)\n\nA variant of `include_bytes!`/`include_str!` with compile-time deflation and runtime lazy inflation.\n\n## Why?\n`include_bytes!`/`include_str!` are great for embedding resources into an executable/library\nwithout involving the complex logistics of maintaining an assets manager.\nHowever, they are copied as-is into the artifact, leading to unnecessarily large binary size.\nThis library automatically compresses the resources and lazily decompresses them at runtime,\nallowing smaller binary sizes.\n\nNevertheless, this inevitably leads to wasting RAM to store both the compressed and decompressed data,\nwhich might be undesirable if the data are too large.\nAn actual installer is still required if the binary involves too many resources that do not need to be kept in RAM all time.\n\n## Warning\nThis library compresses included data independently.\nIt is usually more effective to compress the whole output binary together (e.g. distributing `.exe.gz` )\nthan to compress independently.\nIn addition, compression algorithms usually produce smaller artifacts by processing the raw input together\nthan by processing already-compressed output.\n`#[cfg_attr]` might come handy for conditionally using compression or direct data inclusion.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsof3%2Finclude-flate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsof3%2Finclude-flate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsof3%2Finclude-flate/lists"}