Skip to main content

loadsmith_thunderstore/
lib.rs

1//! Thunderstore API client, index backends, and r2z format for the loadsmith
2//! mod-manager library.
3//!
4//! This is an internal crate of the [`loadsmith`] workspace. Most consumers
5//! should depend on the `loadsmith` facade crate instead of using this
6//! crate directly.
7//!
8//! # Examples
9//!
10//! ```
11//! use loadsmith_core::PackageId;
12//! use loadsmith_thunderstore::PackageIdExt;
13//!
14//! let id = PackageId::new("Author-Name");
15//! let ident = id.into_ts_ident().unwrap();
16//! assert_eq!(ident.to_string(), "Author-Name");
17//! ```
18
19mod error;
20mod ext;
21mod index;
22pub mod r2z;
23mod registry;
24mod schema;
25
26pub use error::{Error, Result};
27pub use ext::{PackageIdExt, PackageRefExt};
28pub use index::{in_memory, sqlite};
29pub use registry::ThunderstoreRegistry;
30pub use schema::{distribution_into_platform, r2_config_to_loader};