CoOp:Anything
게임을 검색해 협동 플레이 가능한 모드·단계·품질·커뮤니티 평점을 확인합니다
저장소 정보는 아직 수집하지 않았습니다.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
Minecraft Java launcher in Rust, Tauri 2 and Vue 3: Prism-style instances, Microsoft and ely.by accounts, Modrinth/CurseForge/FTB content, Ed25519-signed self-updates and sandboxed WebAssembly plugins.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗A Minecraft launcher in one place: Prism-style instances, portable data, Ed25519-signed self-updates
Download · Website · Architecture · Build · Discord
English · Русский
_k0t1k is a Minecraft Java launcher that aims for Prism Launcher's feature set with a custom UI. A Rust core owns every launcher concern (metadata, installs, Java, accounts, content, launching); a thin Tauri 2 shell exposes it to a Vue 3 UI. It targets Windows first and also ships a Linux AppImage. It is in open beta.
Role: sole developer; AI-assisted development.
| Area | What it does |
|---|---|
| Content | Modrinth and CurseForge mods, modpacks and resource packs, FTB packs, managed pack updates, update-all, drag & drop |
| Loaders and clients | Fabric, Quilt, Forge, NeoForge through Prism meta; LabyMod 4 as an alternative client |
| Java | Mojang runtimes downloaded per version, automatic JVM memory tuning |
| Accounts | Microsoft (device code), ely.by, offline; tokens encrypted with DPAPI |
| Instances | Groups, copies, custom icons, playtime, worlds, data packs, screenshots, shared servers.dat |
| Import and export | Prism zip, .mrpack, CurseForge zip |
| Diagnostics | Crash dialog with one-click log upload to mclo.gs |
| UI | Themes, user themes, lite mode, English and Russian |
| Group | Technology | Version | Role |
|---|---|---|---|
| Core | Rust (packages/core, crate k0t1k-core) | edition 2024 | Launcher logic with no UI dependency, tested on Linux |
| Core | tokio / reqwest (rustls) | 1.54 / 0.13 | Async runtime and HTTP |
| Shell | Tauri (apps/app/src-tauri, crate k0t1k-app) | 2.12 | Window, tray, commands, events, WebView2 |
| UI | Vue + Pinia + vue-router | 3.5 / 4.1 / 5.4 | Views and state |
| UI | TypeScript, Vite, Tailwind CSS | 5.9 / 8.3 / 4.3 | Build and styling |
| Plugins | WebAssembly (wasm-bindgen, --target web) | api v1 | RatScan and packconv, run in a Web Worker |
| Data | JSON files (settings.json, instance.json), packwiz .pw.toml | — | Storage, Prism-compatible mod metadata |
| Infra | GitHub Releases, GitHub Pages (site/) | — | Signed exe and plugin releases, landing page |
flowchart LR
User((Player)) --> UI[Vue UI<br/>apps/app/src]
UI -- invoke / events --> Shell[Tauri shell<br/>k0t1k-app]
UI -- bytes only --> Worker[Web Worker<br/>wasm plugins]
Shell --> Core[k0t1k-core]
Core --> Data[(Data dir next to exe<br/>settings, instances,<br/>libraries, assets, java)]
Core --> Meta[Prism meta<br/>Mojang piston]
Core --> Content[Modrinth<br/>CurseForge / FTB]
Core --> Auth[Microsoft / Xbox / Minecraft<br/>ely.by]
Core --> Laby[LabyMod CDN]
Core --> GH[GitHub Releases<br/>launcher + plugins]
Core -- spawn --> Game[Java process<br/>Minecraft]
sequenceDiagram
participant UI
participant App as k0t1k-app
participant Core as k0t1k-core
participant Net as Meta / CDNs
participant JVM as Minecraft
UI->>App: launch_instance(id)
App->>Core: resolve components (minecraft, loader or client)
Core->>Net: fetch meta (sha256-checked, cached offline)
Core->>Core: build LaunchProfile (main class, classpath, args, Java major)
Core->>Net: install libraries, assets, Java runtime
App->>Core: build_command + session dir (natives, launch-args.txt)
Core->>JVM: spawn
JVM-->>App: log lines, exit code
App-->>UI: events (progress, log, crash report)
version + sha256(exe), which blocks replay
and downgrade. The running exe is renamed to .old and the new one is started with --wait-for <pid>, so the
single-instance mutex is free.Full notes: docs/ARCHITECTURE.md.
.
├── apps/app/src # Vue UI: views, components, stores, i18n (en, ru), wasm plugin host
├── apps/app/src-tauri # Tauri shell: commands, tray, window, updater, plugin backend
├── apps/app/public/plugins # Bundled baseline builds of the wasm plugins
├── packages/core # k0t1k-core: meta, install, java, auth, content, launch, update, plugins
├── icons # Instance icon set (SVG) and its style guide
├── site # Landing page, deployed to GitHub Pages
├── scripts # release.sh: sign and publish a launcher release
└── docs # ARCHITECTURE.md
_k0t1k.exe (Windows) or _k0t1k-x86_64.AppImage (Linux) from Releases.[!NOTE] Windows: 10 or newer with WebView2; the exe is not code-signed yet, so SmartScreen may warn on first start. Linux: x86_64 AppImage for Ubuntu 22.04 or newer and similar systems; make it executable and run it. There is no tray icon on Linux.
Requirements: Rust (edition 2024), Node.js with pnpm, and Windows for the Tauri app. The Tauri crate does not build
on Linux without webkit2gtk, but k0t1k-core builds and tests anywhere.
pnpm install
cargo test -p k0t1k-core # core tests, any OS
pnpm --filter @k0t1k/app check # vue-tsc
pnpm dev # tauri dev
Release build on Windows:
pnpm --filter @k0t1k/app exec vite build
cargo build --release -p k0t1k-app --features tauri/custom-protocol
Build-time keys are read from .env in the repository root by apps/app/src-tauri/build.rs. Each one is optional.
| Variable | Default | Without it |
|---|---|---|
K0T1K_CURSEFORGE_API_KEY | unset | CurseForge is unavailable |
K0T1K_MSA_CLIENT_ID | unset | Microsoft sign-in is unavailable |
K0T1K_DISCORD_CLIENT_ID | unset | Discord Rich Presence is off |
[!WARNING]
.envis git-ignored. CurseForge keys start with$2a$10$, so neversourcethe file in a shell.
scripts/release.sh <exe> <notes> reads the version from the workspace Cargo.toml and checks that the exe embeds it.
It signs "_k0t1k-update\n" + version + "\n" + sha256(exe) with the key in K0T1K_UPDATE_KEY
(default ~/.config/k0t1k/update-signing-key.pem). It refuses a dirty or unpushed tree, then runs
gh release create v<version> with _k0t1k.exe and _k0t1k.exe.sig. Bump the version in Cargo.toml and
apps/app/package.json before each release.
| Item | Link |
|---|---|
| Website | https://hhhhhffd.github.io/_k0t1k/ |
| Releases | https://github.com/hhhhhffd/_k0t1k/releases |
| Support / bug reports | https://discord.gg/zxnMAfUvJ |
AGPL-3.0-only. See LICENSE. Copyright (c) 2026 hhhhhffd.