Skip to content

About

A cross-platform Minecraft Launcher.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

73 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Deci Launcher

English | 简体中文

A cross-platform Minecraft Launcher built with C#/.NET 10 + Photino.NET + Vue 3.

Features

  • Cross-platform — Windows, macOS, Linux (x64 & ARM64)
  • Offline accounts — Create and manage offline Minecraft accounts
  • Auto Java detection — Scans system for installed Java runtimes, auto-matches the best one per version; warns when a manually selected Java is below the version requirement
  • Version scanning — Reads .minecraft/versions/ directory, auto-detects vanilla and modded (Fabric/Forge/NeoForge/Quilt) versions
  • Version isolation — When a version folder has its own mods/ or saves/, game data is kept inside the version folder
  • Download source — Switchable between BMCLAPI mirror and official Mojang sources
  • Staged launch progress — Live stage text (parse → Java → launch → waiting) on the launch button
  • Crash analysis — Automatically parses the latest crash report on abnormal exit and explains the cause (memory / graphics driver / mod conflicts / Java version / …) in Chinese or English
  • Single-file publish — Self-contained .exe with no external DLLs
  • Clean UI — Green-themed minimal interface with animated transitions
  • Single instance — Launching a second time reports "already running" and exits instead of opening another window
  • Games survive launcher exit — Closing the launcher (X / Alt+F4 / taskbar) only cancels an in-progress launch; a running game keeps going. Only the "Close game" button stops it
  • Local logs — Rolling latest.log (with a fallback location when the config folder is not writable); crash analysis also appends the tail of the game output. Nothing is uploaded anywhere

System Requirements

Platform Minimum version Architectures
Windows Windows 10 1809 (17763) or later (22H2 / Windows 11 recommended) x64, arm64
macOS macOS 14 Sonoma or later arm64 (Apple Silicon), x64 (Intel)
Linux Ubuntu 22.04 LTS / Debian 12 / Fedora 42 or later (glibc ≥ 2.35) x64, arm64
  • 32-bit systems are not supported.
  • On Linux, webkit2gtk-4.1 must be available (default since Ubuntu 22.04 / Debian 12); other distros work as long as glibc and webkit2gtk meet these versions.
  • These minimums follow the .NET 10 runtime support matrix and Photino's WebView components (WebView2 / WKWebView / WebKitGTK).

Command-line Options

Option Description
--opaque Start with an opaque (non-transparent) window. Use this when the window shows no content — see Troubleshooting

The environment variable DECILAUNCHER_OPAQUE=1 has the same effect as --opaque.

Troubleshooting

The window is empty or fully transparent

  1. Check the log file first (see below) — it records which startup stage failed.
  2. Start with --opaque (or DECILAUNCHER_OPAQUE=1). If the UI then appears, the transparent-window rendering path is the problem.
  3. If it is still blank, quit the launcher, delete the WebView2 data folder, and start again:
    • Windows: %LOCALAPPDATA%\DeciLauncher\EBWebView

"Deci Launcher is already running"

Only one instance may run at a time. Close the other instance and start again. Note that closing the launcher does not stop a game that is already running.

Log files

Platform Path
Windows %AppData%\.decilc\logs\latest.log
Linux / macOS ~/.config/.decilc/logs/latest.log

If that folder cannot be created (restricted environment), the launcher falls back to logs/latest.log next to the executable. Three generations are kept (latest.log, latest.1.log, latest.2.log) and the logs never leave your machine.

Tech Stack

Layer Technology
Backend C# (.NET 10), Photino.NET, MinecraftLaunch
Frontend Vue 3 + TypeScript + UnoCSS + Vite
Desktop Photino.NET (WebView2 on Windows, WebKit on macOS/Linux)
Build .NET SDK + pnpm

Development

Prerequisites

Setup

# Install frontend dependencies
cd UserInterface
pnpm install

# Run in development mode (Vite dev server + .NET debug)
pnpm dev & dotnet run

Build

# Build frontend
cd UserInterface && pnpm build && cd ..

# Build backend (Debug)
dotnet build

# Run backend tests (xUnit v3, DeciLauncher.Tests)
dotnet test

# Run frontend tests (vitest)
cd UserInterface && pnpm test && cd ..

# Version consistency check (package.json must match <Version> in DeciLauncher.csproj)
node UserInterface/scripts/check-version.mjs

# Publish (Release, single-file, self-contained)
# Note: pass the csproj explicitly — a bare `dotnet publish` resolves the .slnx
# and would try to publish the test project (NETSDK1151)
dotnet publish DeciLauncher.csproj -c Release -r win-x64

# One-shot release build: frontend + every RID + zips (RIDs that need another
# platform are skipped with a notice). Version defaults to <Version> in the csproj.
./publish.ps1

Used Open Source Projects

Project Purpose License
.NET Runtime & SDK MIT
ASP.NET Core Embedded file server MIT
Photino.NET Desktop windowing Apache-2.0
MinecraftLaunch Minecraft launch core MIT
Vue Frontend framework MIT
Vite Frontend build tool MIT
UnoCSS CSS engine MIT
TypeScript Typed JavaScript Apache-2.0
xUnit Test framework Apache-2.0
pnpm Package manager MIT

License

GPL-3.0

About

A cross-platform Minecraft Launcher.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages