LightyLauncher

Crates.ioarrow-up-right Documentationarrow-up-right License: MITarrow-up-right Rust Versionarrow-up-right

ACTIVE DEVELOPMENT - API may change between versions. Use with caution in production.

A modern, modular Minecraft launcher library for Rust with full async support, real-time event system, and automatic Java management.

LightyUpdater Banner

Features

  • Modular Architecture: Organized into logical crates (auth, event, java, launch, loaders, version, core)

  • Multi-Loader Support: Vanilla, Fabric, Quilt, NeoForge, Forge, OptiFine, LightyUpdater

  • Event System: Real-time progress tracking for all operations

  • Authentication: Offline, Microsoft OAuth 2.0, Azuriom CMS + extensibility for custom providers

  • Automatic Java Management: Download and manage JRE distributions (Temurin, GraalVM, Zulu, Liberica)

  • Cross-Platform: Windows, Linux, and macOS support

Installation

Quick Start

Documentation

πŸ“– Guides

Comprehensive documentation in the docs/ directory:

Guide
Description

Visual diagrams of all workflows (launch, authentication, installation)

Complete list of all re-exported types and their sources

System architecture, design patterns, and module dependencies

Detailed walkthrough of all examples with code explanations

πŸ“¦ Crate Documentation

Complete documentation for each crate:

Core Crates

Crate
Description
Documentation

Core utilities and AppState management

Feature Crates

Crate
Description
Documentation

Authentication (Offline, Microsoft, Azuriom)

Java runtime management

Game launching and process management

Mod loader implementations

Event system for progress tracking

Detailed Guides

lighty-launch Documentation

Guide
Description

Complete launch workflow (5 phases)

Placeholders, JVM options, game arguments

Asset/library installation details

Process management and PID tracking

Event types reference

Practical examples

Module exports reference

lighty-version Documentation

Guide
Description

Practical usage guide

Architecture and design

Module exports reference

Standard builder details

Examples

The examples/ directory contains ready-to-use examples for all loaders and features:

Example
Description
Features Required

Basic Vanilla Minecraft launcher

vanilla

Fabric mod loader

fabric

Quilt mod loader

quilt

NeoForge mod loader

neoforge

Forge mod loader

forge

Legacy Forge (1.7.10-1.12.2)

forge_legacy

OptiFine launcher

optifine

Custom modpack server

lighty_updater

Complete event system & instance management

vanilla, events

Running Examples

Advanced Examples

with_events.rs demonstrates:

  • Real-time event tracking for all operations

  • Instance lifecycle management (create, launch, monitor, close, delete)

  • Console output streaming

  • Instance size calculation

  • PID tracking and control

See docs/examples.md for detailed example documentation.

Cargo Features

Available Features:

  • vanilla - Vanilla Minecraft support (required base)

  • fabric - Fabric loader

  • quilt - Quilt loader

  • neoforge - NeoForge loader

  • forge - Forge loader

  • forge_legacy - Legacy Forge (1.7.10 - 1.12.2)

  • lighty_updater - Custom updater system

  • all-loaders - All mod loaders

  • events - Event system

Architecture

Contributing

Contributions are welcome! Please read the Contributing Guidearrow-up-right before submitting a PR.

License

MIT License - see LICENSEarrow-up-right file for details.

Last updated