An open API service indexing awesome lists of open source software.

https://github.com/salwyrrv2/salwyrr-source-code

Custom Electron-based Minecraft launcher
https://github.com/salwyrrv2/salwyrr-source-code

minecraft minecraft-launcher modified salwyrr-client source-code

Last synced: about 1 month ago
JSON representation

Custom Electron-based Minecraft launcher

Awesome Lists containing this project

README

          

Salwyrr

# Salwyrr Launcher

**A custom Minecraft launcher built on Electron.**

[![License: MIT](https://img.shields.io/badge/License-MIT-orange.svg)](LICENSE)
[![Node](https://img.shields.io/badge/Node-%3E%3D18-brightgreen.svg)](https://nodejs.org)
[![Electron](https://img.shields.io/badge/Built%20with-Electron-47848F.svg)](https://www.electronjs.org)

---

## Overview

Salwyrr Launcher is a desktop application for launching Minecraft with support for custom versions, mod management, offline and Microsoft accounts, automatic asset/library downloads, and crash log capture. It is built with Electron and targets Windows (with partial macOS support).

## Requirements

| Dependency | Version |
|------------|---------|
| Node.js | ≥ 18 |
| npm | ≥ 9 |
| Java | 8 (64-bit) or 17+ depending on Minecraft version |

## Getting Started

```bash
# 1. Clone the repository
git clone https://github.com/corecommit/salwyrr-launcher.git
cd salwyrr-launcher

# 2. Install dependencies
npm install

# 3. Start in development mode
npm run dev

# 4. Or start normally
npm start
```

## Project Structure

```
salwyrr-launcher/
├── index.js # Electron main process
├── app/
│ ├── app.ejs # Root window template
│ ├── landing.ejs # Main launcher UI
│ ├── overlay.ejs # Version selection overlay
│ └── assets/
│ ├── css/launcher.css # All styles
│ ├── images/ # Icons, backgrounds, version images
│ ├── lang/en_US.json # UI strings
│ └── js/
│ ├── configmanager.js # Settings & paths
│ ├── processbuilder.js # Game process construction
│ ├── assetguard.js # Asset validation & download
│ └── scripts/
│ ├── landing.js # Landing page logic (launch, modals, news)
│ ├── overlay.js # Version picker logic
│ ├── uibinder.js # UI wiring
│ └── uicore.js # Core UI utilities
└── package.json
```

## Crash Logs

When the game crashes, a log file is automatically created at:

```
%APPDATA%\.Salwyrr\logs\logs.txt
```

The "Check Logs" button in the crash dialog opens this file directly.

## Configuration

The launcher stores its config at:

- **Windows:** `%APPDATA%\Salwyrr Launcher\config.json`
- **macOS:** `~/Library/Application Support/Salwyrr Launcher/config.json`

Game files (instances, libraries, assets) are stored in:

- **Windows/Linux:** `~/.Salwyrr/`
- **macOS:** `~/Salwyrr/`

## Pack & Update

To pack the source code into app.asar run `asar pack app.asar` then move the app.asar in the resources/ folder

## Contributing

Pull requests are welcome. For major changes please open an issue first.

## License

MIT — see [LICENSE](LICENSE).