3 unstable releases
| 0.8.6 | Dec 14, 2025 |
|---|---|
| 0.8.2 | Dec 14, 2025 |
| 0.6.2 | Dec 2, 2025 |
#821 in Games
Used in 3 crates
170KB
3.5K
SLoC
lighty-version
Version metadata types for LightyLauncher.
Note
This is an internal crate for the LightyLauncher ecosystem. Most users should use the main lighty-launcher crate instead.
Features
- Version Metadata: Comprehensive metadata structures for Minecraft versions
- Builder Pattern: Construct version configurations easily
- Type Safety: Strongly typed version information
- Serialization: Full serde support for JSON import/export
Structure
lighty-version/
└── src/
├── lib.rs # Module declarations and re-exports
├── version_builder.rs # Version builder pattern
├── lighty_builder.rs # LightyUpdater builder
└── loader_extensions_impl.rs # Loader-specific extensions
Usage
[dependencies]
lighty-version = "0.6.3"
use lighty_version::version_metadata::{VersionMetaData, VersionBuilder};
// Use version metadata
let metadata = VersionMetaData {
id: "1.21".to_string(),
main_class: "net.minecraft.client.main.Main".to_string(),
// ... other fields
};
// Or use the builder
let builder = VersionBuilder::new()
.id("1.21")
.main_class("net.minecraft.client.main.Main")
.build();
Types
VersionMetaData
Complete metadata for a Minecraft version including:
- Version ID
- Main class
- Libraries
- Assets
- Arguments
- Download URLs
VersionBuilder
Builder for constructing version metadata:
use lighty_version::version_metadata::VersionBuilder;
let builder = VersionBuilder::new()
.id("1.21")
.main_class("net.minecraft.client.main.Main")
.asset_index("16")
.build();
Integration
This crate is typically used with lighty-loaders to provide version information:
use lighty_loaders::version::Version;
use lighty_version::version_metadata::VersionMetaData;
// Version objects contain VersionMetaData internally
let version = Version::new(/* ... */);
let metadata: &VersionMetaData = version.get_metadata();
License
MIT
Links
- Main Package: lighty-launcher
- Repository: GitHub
- Documentation: docs.rs/lighty-version
Dependencies
~22–48MB
~695K SLoC