Skip to content

Electron-Minecraft-Launcher/EML-Template

Repository files navigation

EML Template

EML Template is the reference boilerplate for building a modern, fast, and cross-platform Minecraft Launcher.

Powered by EML Lib • Configurable via EML AdminTool

EML AdminTool

EML AdminTool Logo


Introduction

EML Template acts as the frontend foundation for the Electron Minecraft Launcher ecosystem. It is a pre-configured Electron + Vite application designed to provide the best possible gaming experience.

It is engineered to work in perfect synergy with EML Lib (for the core logic) and EML AdminTool (for configuration).

Features

  • Next-Gen Performance: Built on Vite, offering instant startup and Hot-Module-Replacement (HMR).
  • Microsoft authentication: Full integration of the official authentication flow via EML Lib.
  • Asset management: Smart downloading of game files (Java, libraries, assets, mods) with hash validation, thanks to EML AdminTool.
  • Auto-update: Automatic update system linked to your EML AdminTool instance.

Installation & Development

Prerequisites

Before starting, ensure you have installed:

  • Node.js (v18 or higher recommended)
  • NPM (or Yarn/Pnpm)

Setup

  1. Clone the repository:

    git clone https://github.com/Electron-Minecraft-Launcher/EML-Template.git
    cd EML-Template
  2. Install dependencies:

    npm install

    Note: This will automatically install eml-lib and build tools.

  3. Start in Development mode:

    npm run dev

    An Electron window will open with hot-reloading enabled.

Configuration

Link to your EML AdminTool instance

Modify the configuration file (electron/const.ts) to point to your distribution URL generated by EML AdminTool.

Icon Customization

To change the visual identity, replace the files in the build/ folder:

  • icon.png: Standard icon (512x512).
  • icon.ico: For Windows.
  • icon.icns: For macOS (Legacy & Liquid Glass fallback).
  • background.png: DMG Installer background (macOS).

Build (distribution)

To create the final executables for distribution:

Platform Command Output format
Windows npm run build:win .exe (NSIS Installer)
macOS npm run build:mac .dmg (Disk Image)
Linux npm run build:linux .AppImage, .deb, .rpm

Compiled files will be located in the dist/ folder.

Contributing

Contributions are welcome! For major changes, please open an issue first to discuss what you would like to change.