2019-03-05 21:37:31 -08:00
< p align = "center" > < img src = "./app/assets/images/SealCircle.png" width = "150px" height = "150px" alt = "aventium softworks" > < / p >
2017-05-16 23:26:46 -07:00
2019-09-05 13:08:47 -07:00
< h1 align = "center" > Helios Launcher< / h1 >
2017-05-16 23:26:46 -07:00
2019-09-05 13:08:47 -07:00
< em > < h5 align = "center" > (formerly Electron Launcher)< / h5 > < / em >
[<p align="center"><img src="https://img.shields.io/travis/dscalzi/HeliosLauncher.svg?style=for-the-badge" alt="travis"> ](https://travis-ci.org/dscalzi/HeliosLauncher ) [<img src="https://img.shields.io/github/downloads/dscalzi/HeliosLauncher/total.svg?style=for-the-badge" alt="downloads"> ](https://github.com/dscalzi/HeliosLauncher/releases ) < img src = "https://forthebadge.com/images/badges/winter-is-coming.svg" height = "28px" alt = "stark" ></ p >
2017-05-16 23:26:46 -07:00
2019-03-05 21:37:31 -08:00
< p align = "center" > Join modded servers without worrying about installing Java, Forge, or other mods. We'll handle that for you.< / p >
2017-05-16 23:26:46 -07:00
2019-09-05 13:08:47 -07:00
![Screenshot 1 ](https://i.imgur.com/6o7SmH6.png )
![Screenshot 2 ](https://i.imgur.com/x3B34n1.png )
2017-05-16 23:26:46 -07:00
2018-07-22 14:54:35 -07:00
## Features
2017-05-16 23:26:46 -07:00
2018-07-22 14:54:35 -07:00
* 🔒 Full account management.
* Add multiple accounts and easily switch between them.
* Credentials are never stored and transmitted directly to Mojang.
* 📂 Efficient asset management.
* Receive client updates as soon as we release them.
* Files are validated before launch. Corrupt or incorrect files will be redownloaded.
* ☕ **Automatic Java validation.**
* If you have an incompatible version of Java installed, we'll install the right one *for you* .
* You do not need to have Java installed to run the launcher.
* 📰 News feed natively built into the launcher.
* ⚙️ Intuitive settings management, including a Java control panel.
* Supports all of our servers.
* Switch between server configurations with ease.
* View the player count of the selected server.
* Automatic updates. That's right, the launcher updates itself.
* View the status of Mojang's services.
2017-05-16 23:26:46 -07:00
2018-07-22 14:54:35 -07:00
This is not an exhaustive list. Download and install the launcher to gauge all it can do!
2017-05-16 23:26:46 -07:00
2018-08-31 09:42:18 -07:00
#### Need Help? [Check the wiki.][wiki]
2018-07-22 14:54:35 -07:00
2018-10-28 14:19:41 -07:00
#### Like the project? Leave a ⭐ star on the repository!
2018-07-22 14:54:35 -07:00
## Downloads
2019-09-05 13:08:47 -07:00
You can download from [GitHub Releases ](https://github.com/dscalzi/HeliosLauncher/releases )
2018-07-22 14:54:35 -07:00
2018-08-31 09:42:18 -07:00
#### Latest Release
2018-08-08 19:37:37 -07:00
2019-09-05 13:08:47 -07:00
[![ ](https://img.shields.io/github/release/dscalzi/HeliosLauncher.svg?style=flat-square )](https://github.com/dscalzi/HeliosLauncher/releases/latest)
2018-07-22 14:54:35 -07:00
2018-08-31 09:42:18 -07:00
#### Latest Pre-Release
2019-09-05 13:08:47 -07:00
[![ ](https://img.shields.io/github/release/dscalzi/HeliosLauncher/all.svg?style=flat-square )](https://github.com/dscalzi/HeliosLauncher/releases)
2018-07-22 14:54:35 -07:00
2018-08-08 19:37:37 -07:00
**Supported Platforms**
2019-09-05 13:08:47 -07:00
If you download from the [Releases ](https://github.com/dscalzi/HeliosLauncher/releases ) tab, select the installer for your system.
2018-07-22 14:54:35 -07:00
| Platform | File |
| -------- | ---- |
2021-01-20 08:03:20 -08:00
| Windows x64 | `Helios-Launcher-setup-VERSION.exe` |
2021-05-13 18:49:18 -07:00
| macOS x64 | `Helios-Launcher-setup-VERSION.dmg` |
| macOS arm64 | `Helios-Launcher-setup-VERSION-arm64.dmg` |
2021-01-20 08:03:20 -08:00
| Linux x64 | `Helios-Launcher-setup-VERSION.AppImage` |
2018-07-22 14:54:35 -07:00
## Console
To open the console, use the following keybind.
```console
ctrl + shift + i
```
Ensure that you have the console tab selected. Do not paste anything into the console unless you are 100% sure of what it will do. Pasting the wrong thing can expose sensitive information.
#### Export Output to a File
If you want to export the console output, simply right click anywhere on the console and click **Save as..**
2019-09-05 13:08:47 -07:00
![console example ](https://i.imgur.com/T5e73jP.png )
2018-07-22 14:54:35 -07:00
## Development
2021-02-01 15:04:52 -08:00
This section details the setup of a basic developmentment environment.
2018-07-22 14:54:35 -07:00
### Getting Started
**System Requirements**
2021-10-14 20:55:31 -07:00
* [Node.js][nodejs] v16
2018-07-22 14:54:35 -07:00
---
**Clone and Install Dependencies**
```console
2019-09-05 13:08:47 -07:00
> git clone https://github.com/dscalzi/HeliosLauncher.git
> cd HeliosLauncher
2018-07-22 14:54:35 -07:00
> npm install
```
---
**Launch Application**
```console
> npm start
2017-05-16 23:26:46 -07:00
```
2018-07-22 14:54:35 -07:00
---
2017-05-16 23:26:46 -07:00
2018-07-22 14:54:35 -07:00
**Build Installers**
2017-05-16 23:26:46 -07:00
2018-07-22 14:54:35 -07:00
To build for your current platform.
2017-05-16 23:26:46 -07:00
2018-07-22 14:54:35 -07:00
```console
> npm run dist
2017-05-16 23:26:46 -07:00
```
2018-07-22 14:54:35 -07:00
Build for a specific platform.
| Platform | Command |
| ----------- | -------------------- |
| Windows x64 | `npm run dist:win` |
| macOS | `npm run dist:mac` |
| Linux x64 | `npm run dist:linux` |
Builds for macOS may not work on Windows/Linux and vice-versa.
---
### Visual Studio Code
2017-05-16 23:26:46 -07:00
2018-07-22 14:54:35 -07:00
All development of the launcher should be done using [Visual Studio Code][vscode].
2017-05-16 23:26:46 -07:00
2018-07-22 14:54:35 -07:00
Paste the following into `.vscode/launch.json`
```JSON
2017-05-16 23:26:46 -07:00
{
"version": "0.2.0",
"configurations": [
{
"name": "Debug Main Process",
"type": "node",
"request": "launch",
2020-08-10 14:41:57 -07:00
"cwd": "${workspaceFolder}",
2020-11-16 20:11:24 -08:00
"program": "${workspaceFolder}/node_modules/electron/cli.js",
"args" : ["."],
"outputCapture": "std"
2017-05-16 23:26:46 -07:00
},
{
"name": "Debug Renderer Process",
"type": "chrome",
"request": "launch",
2020-08-10 14:41:57 -07:00
"runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron",
2017-05-16 23:26:46 -07:00
"windows": {
2020-08-10 14:41:57 -07:00
"runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron.cmd"
2017-05-16 23:26:46 -07:00
},
"runtimeArgs": [
2020-08-10 14:41:57 -07:00
"${workspaceFolder}/.",
2017-05-16 23:26:46 -07:00
"--remote-debugging-port=9222"
],
2020-08-10 14:41:57 -07:00
"webRoot": "${workspaceFolder}"
2017-05-16 23:26:46 -07:00
}
]
}
```
2018-07-22 14:54:35 -07:00
This adds two debug configurations.
2017-05-16 23:26:46 -07:00
2018-07-22 14:54:35 -07:00
#### Debug Main Process
2017-05-16 23:26:46 -07:00
2018-07-22 14:54:35 -07:00
This allows you to debug Electron's [main process][mainprocess]. You can debug scripts in the [renderer process][rendererprocess] by opening the DevTools Window.
2017-05-16 23:26:46 -07:00
2018-07-22 14:54:35 -07:00
#### Debug Renderer Process
2017-05-16 23:26:46 -07:00
2018-07-22 14:54:35 -07:00
This allows you to debug Electron's [renderer process][rendererprocess]. This requires you to install the [Debugger for Chrome][chromedebugger] extension.
2017-05-16 23:26:46 -07:00
2018-07-22 14:54:35 -07:00
Note that you **cannot** open the DevTools window while using this debug configuration. Chromium only allows one debugger, opening another will crash the program.
2017-11-27 13:56:26 -08:00
2018-10-28 14:19:41 -07:00
---
### Note on Third-Party Usage
2021-07-18 21:52:57 -07:00
Please give credit to the original author and provide a link to the original source. This is free software, please do at least this much.
2018-10-28 14:19:41 -07:00
2018-07-22 14:54:35 -07:00
---
2017-11-27 13:56:26 -08:00
2018-07-22 14:54:35 -07:00
## Resources
2018-01-24 13:23:44 -08:00
2018-08-31 09:42:18 -07:00
* [Wiki][wiki]
2020-07-03 15:29:47 -07:00
* [Nebula (Create Distribution.json)][nebula]
* [v2 Rewrite Branch (WIP)][v2branch]
2018-01-24 13:23:44 -08:00
2018-07-22 14:54:35 -07:00
The best way to contact the developers is on Discord.
2017-11-27 13:56:26 -08:00
2019-03-05 21:37:31 -08:00
[![discord ](https://discordapp.com/api/guilds/211524927831015424/embed.png?style=banner3 )][discord]
2017-11-27 13:56:26 -08:00
2018-07-22 14:54:35 -07:00
---
2017-05-16 23:26:46 -07:00
2019-03-05 21:40:23 -08:00
### See you ingame.
2017-05-16 23:26:46 -07:00
2018-04-07 15:06:49 -07:00
2018-07-22 14:54:35 -07:00
[nodejs]: https://nodejs.org/en/ 'Node.js'
[vscode]: https://code.visualstudio.com/ 'Visual Studio Code'
[mainprocess]: https://electronjs.org/docs/tutorial/application-architecture#main-and-renderer-processes 'Main Process'
[rendererprocess]: https://electronjs.org/docs/tutorial/application-architecture#main-and-renderer-processes 'Renderer Process'
[chromedebugger]: https://marketplace.visualstudio.com/items?itemName=msjsdiag.debugger-for-chrome 'Debugger for Chrome'
2019-03-05 21:37:31 -08:00
[discord]: https://discord.gg/zNWUXdt 'Discord'
2019-09-05 13:08:47 -07:00
[wiki]: https://github.com/dscalzi/HeliosLauncher/wiki 'wiki'
2020-07-03 15:29:47 -07:00
[nebula]: https://github.com/dscalzi/Nebula 'dscalzi/Nebula'
[v2branch]: https://github.com/dscalzi/HeliosLauncher/tree/ts-refactor 'v2 branch'