No description
- TypeScript 98.7%
- JavaScript 0.8%
- CSS 0.5%
|
Some checks are pending
Release / build (XNeon-Launcher-Linux, ubuntu-latest) (push) Waiting to run
Release / build (XNeon-Launcher-Windows, windows-latest) (push) Waiting to run
Release / build (XNeon-Launcher-macOS, macos-latest) (push) Waiting to run
Release / release (push) Blocked by required conditions
|
||
|---|---|---|
| .github/workflows | ||
| build | ||
| components | ||
| electron | ||
| lib | ||
| packages | ||
| public | ||
| scripts | ||
| src | ||
| .gitignore | ||
| AGENTS.md | ||
| components.json | ||
| index.html | ||
| package-lock.json | ||
| package.json | ||
| postcss.config.mjs | ||
| README.md | ||
| tsconfig.json | ||
| tsconfig.node.json | ||
| vite.config.ts | ||
XNeon Launcher
XNeon Launcher — современный лаунчер для Minecraft с открытым исходным кодом. Быстрый, гибкий, с поддержкой импорта сборок из других лаунчеров и облачным хранением.
Features
- 🚀 Запуск Minecraft — поддержка Vanilla, Fabric, Quilt, Forge, NeoForge с любыми версиями
- 📦 Импорт из других лаунчеров — Prism Launcher, MultiMC, PolyMC, GDLauncher, XMCL, Modrinth App, AstralRinth
- 🌐 Облачное хранение — синхронизация сборок, модов и настроек между устройствами
- 📥 Modrinth & CurseForge — встроенный поиск, установка и обновление модов и модпаков
- 🗂 Управление сборками — изолированные профили с собственными модами, ресурспаками и шейдерами
- 🔐 Аккаунты — поддержка Microsoft, Ely.by, XNSkins и оффлайн-режима
- 🧵 RetroAuth / Authlib Injector — встроенная поддержка альтернативной авторизации
- ⚙️ Гибкие настройки — управление Java, памятью, аргументами запуска
- 🌍 Мультиязычность — русский, английский, украинский, немецкий, испанский
- 🎨 Кастомизация — темная/светлая тема, настраиваемый интерфейс
Скриншоты
Главный экран с библиотекой сборок
Быстрый старт
# Установка зависимостей
npm install
# Запуск в режиме разработки (Vite + Electron)
npm run dev
# Сборка production-версии
npm run build
# Упаковка в дистрибутив (electron-builder)
npm run package
Импорт из других лаунчеров
XNeon автоматически обнаружит установленные сборки из:
| Лаунчер | Windows | macOS | Linux |
|---|---|---|---|
| Prism Launcher | %APPDATA%\PrismLauncher\instances |
~/Library/Application Support/PrismLauncher |
~/.local/share/PrismLauncher |
| MultiMC | %APPDATA%\MultiMC\instances |
~/Library/Application Support/multimc |
~/.local/share/MultiMC |
| PolyMC | %APPDATA%\PolyMC\instances |
~/Library/Application Support/PolyMC |
~/.local/share/PolyMC |
| GDLauncher Carbon | %APPDATA%\gdlauncher_carbon\data\instances |
~/Library/Application Support/gdlauncher_carbon/data/instances |
~/.local/share/gdlauncher_carbon |
| XMCL / X Launcher | ~\.minecraftx\instances |
~/Library/Application Support/{xmcl,.minecraftx}/instances |
~/.minecraftx/instances |
| Modrinth App | %APPDATA%\ModrinthApp\profiles |
~/Library/Application Support/ModrinthApp |
~/.local/share/ModrinthApp |
| AstralRinth | %APPDATA%\AstralRinthApp\profiles |
~/Library/Application Support/AstralRinthApp |
~/.local/share/AstralRinthApp |
Разработка
Архитектура
Проект состоит из двух частей:
- Renderer (
src/) — интерфейс на React 19 + Vite 6 + Tailwind 4 + shadcn/ui - Electron main (
electron/) — системные вызовы, запуск Minecraft через forked worker, IPC-обработчики
Локальные пакеты в packages/:
@xnlc/core— запуск Minecraft@xnlc/mods— работа с Modrinth / CurseForge API@xnlc/types— общие TypeScript-типы
Команды
npm run dev # Vite + Electron с hot-reload
npm run build # production-сборка
npm run package # electron-builder → release/
npm run lint # проверить код
Структура
components/launcher/ # UI-компоненты (страницы, модалки, настройки)
electron/main/ # Электрон main process
electron/preload.ts # Preload-скрипт (IPC-мост)
packages/ # Локальные npm-пакеты
src/ # Точка входа renderer, i18n, контексты
public/ # Статические файлы, иконки лаунчеров
Лицензия
Благодарности
- Prism Launcher — за вдохновение в области управления инстансами
- X Minecraft Launcher — за отличный пример Electron-лаунчера
- Modrinth и CurseForge — за API для модов
- shadcn/ui — за компоненты интерфейса
- Tabler Icons — за иконки