JSPM

  • Created
  • Published
  • Downloads 414
  • Score
    100M100P100Q90426F
  • License MIT

Create your Electron Minecraft Launcher easily!

Package Exports

  • eml-lib
  • eml-lib/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (eml-lib) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Electron Minecraft Launcher Lib (EML Lib)

Electron Minecraft Launcher Lib (EML Lib) is a Node.js library. It permits to authenticate, download Java and Minecraft and launch Minecraft.

EML AdminTool Logo


Features

Authentication

EML Lib supports multiple authentication methods, including Microsoft, Azuriom, Yggdrasil and Crack. This allows you to choose the authentication method that best suits your needs and preferences.

Read the docs.

Launch settings

Choose the Minecraft version and loader that you want to launch. EML Lib supports all Minecraft versions, from Minecraft beta to the latest Minecraft snapshot, and all loaders, including Vanilla, Forge, NeoForge, Fabric and Quilt. MCP support is coming soon.
EML Lib also allows you to use Profiles, which are sets of settings (such as Minecraft version, loader, mods, etc.) that you can save and reuse later.

EML Lib can automatically download and install Java to ensure that you have the correct Java version for the Minecraft version you want to launch. It also supports custom Java paths if you prefer to use your own Java installation.

To use all the capacities of EML Lib, you should set up your EML AdminTool website. It will allow you to use features such as news, bootstraps, maintenance, background, and more.

Read the docs.

Bootstrap [^1]

Bootstrap is a powerful feature that allows you to auto-update your launcher. It checks for updates on a specified URL and downloads and installs them automatically. This ensures that your launcher is always up to date with the latest features and bug fixes.

Read the docs.

Maintenance mode [^1]

Maintenance mode is a feature that allows you to block the launcher during maintenance. When maintenance mode is enabled, users will see a message indicating that the launcher is under maintenance and will not be able to launch Minecraft until the maintenance is complete.

Read the docs.

Customization [^1]

EML Lib allows you to customize the launcher with various features, including:

  • News: Displaying news on the launcher.
  • Background: Displaying a background image on the launcher.
  • Server status: Displaying server information on the launcher.

Read the docs.

Installation

Software requirements

  • Node.js 20 or higher: see Node.js;
  • Electron 23 or higher: please install it with npm i electron if you use Microsoft Authentication.

To get all the capacities of this Node.js library, you should set up your EML AdminTool website! Without it, some features will be unavailable (such as News, Bootstrap, etc.).

EML Lib installation

You need Node.js and Electron.

# Using npm
npm i eml-lib

eml-lib package includes TypeScript typings, so you don't need to install @types/eml-lib.

Template

You can use the EML Template to create a Minecraft launcher with EML Lib. It is an Electron application that uses EML Lib to launch Minecraft. It is a good starting point to create your own Minecraft launcher.

Quick start

Quick start using the EML AdminTool:

const EMLLib = require('eml-lib')

const launcher = new EMLLib.Launcher({
  url: 'https://admintool.electron-minecraft-launcher.com',
  serverId: 'eml',
  account: new EMLLib.CrackAuth().auth('GoldFrite')
})

launcher.launch()

Please refer to the docs for more information.

Platform compatibility

OS (platform) Supported? Minimum version supported
Windows (win32) Yes Windows 7 (Windows NT 6.1)
macOS (Darwin) Yes Mac OS X Lion (10.7)
Linux, including Chrome OS Yes Variable
Others Not officially -

[!WARNING] Mac with Apple Silicon (M1, M2, etc.) is supported only for Minecraft 1.13 and above.

[!WARNING] No support will be provided for older versions of Windows, macOS and Linux, or for other operating systems.

Tests

The library has been tested on Windows 11 and macOS Tahoe (M3) with Node.js 22, on multiple Minecraft versions, from 1.0 to the Minecraft 26.1-snapshot, and with multiple loaders (Vanilla, Forge, NeoForge, Fabric and Quilt).

[!WARNING] Mac with Apple Silicon (M1, M2, etc.) is supported only for Minecraft 1.13 and above.

[!WARNING] Forge is supported only for Minecraft 1.6 and above.

Contributing

See CONTRIBUTING.md for guidelines on how to contribute to this project.

Important information

  • This is not an official library from Mojang Studios, Microsoft, Electron or Node.js. Minecraft is a trademark of Mojang Studios.
  • This Node.js library is under the MIT license; to get more information, please read the file LICENSE. It is legally obligatory to respect this license.
  • If you need some help, you can join this Discord.

[^1]: These features require the use of the EML AdminTool