A minimal CDN for serving versioned, gzip-compressed static assets, backed by SQLite and an actor-based (smarm) storage server, with HTTP serving via urus. - CLI: create/add/archive packages and versions, serve over HTTP - Storage: SQLite-backed asset store (src/store.rs) with gzip compression on ingest and content-type sniffing by extension - HTTP: GET /packages (list packages+versions), GET /assets/:package/:version/:filename (serves gzip or transparently decompressed, with immutable long-lived cache headers)
15 lines
504 B
TOML
15 lines
504 B
TOML
[package]
|
|
name = "CCC"
|
|
version = "0.1.0"
|
|
edition = "2024"
|
|
|
|
[dependencies]
|
|
urus = { git = "https://git.kalsbeek.dev/Markk116/urus.git" }
|
|
# Pinned to the same tag urus itself depends on, so Cargo unifies both
|
|
# into a single source id/copy of smarm (avoids duplicate #[global_allocator]).
|
|
smarm = { git = "https://git.kalsbeek.dev/Markk116/smarm.git", tag = "v0.5.0" }
|
|
rusqlite = { version = "0.31", features = ["bundled"] }
|
|
flate2 = "1.0"
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|