Skip to content

cross-platform (Windows + Linux) game launcher in 2 forms: minimal CLI downloader (Rust) and a Tauri-based GUI launcher

Notifications You must be signed in to change notification settings

sogladev/rs-game-launcher

Repository files navigation

Rs Game Launcher

This monorepo contains a cross-platform (Windows + Linux) game launcher in 2 forms: minimal CLI downloader (Rust) and a Tauri-based GUI launcher. It is designed to manage patch updates using a manifest. The launcher displays a transaction overview, detailed progress, and only overwrites files listed in the manifest without removing extra files.

The project is designed for easy extension with minimal dependencies, utilizing shared Rust libraries for backend operations while keeping the front-end lightweight.

Socials

Tech Stack

Rust Vue.js Tauri DaisyUI

Core Technologies

  • CLI: Rust-based command line interface
  • GUI: Tauri + Vue.js application with DaisyUI components

Feature Comparison

Feature CLI (Rust) GUI (Tauri + Vue.js)
Manifest-based patch updates Yes Yes
Integrity verification No Yes
Transaction overview Console output Detailed visual output
Directory selection No GUI-based
Launch WoW.exe (wine on non-Windows) No Yes
Customizable front-end N/A Yes
Client download Not planned Not yet supported
Manage addons Not planned Not planned

CLI Details

A lightweight Rust-based terminal CLI for basic patching. It only downloads patches from a manifest.json

CLI

GUI Details

A Tauri + Vue.js wrapper around the same Rust libraries:

  • Allows directory selection
  • Provides art, transaction overviews, and a launch button
  • Uses the same patching logic as the CLI

Launcher Dark

gui.mp4

Local Development

Prerequisites

CLI

  1. Start local CDN
    go run main.go -create-manifest
    go run main.go

From project root

  1. Run the CLI

    cargo run --bin downloader-cli -- --manifest="http://localhost:8080/manifest.json"
  2. Build

    cargo build --bin downloader-cli --release --locked
    cargo build --bin downloader-cli --target x86_64-pc-windows-gnu --release --locked

GUI

  1. Start local CDN
    go run main.go -create-manifest
    go run main.go

From tauri-game-launcher/

  1. Install dependencies:

    bun install
  2. Start the development server

    bun run tauri dev
  3. Build the project

    bun run tauri build

License

About

cross-platform (Windows + Linux) game launcher in 2 forms: minimal CLI downloader (Rust) and a Tauri-based GUI launcher

Topics

Resources

Stars

Watchers

Forks