Files
SCOPENET-MC/docs/development.md
T
SCOPEDD a1f19e86c6 Complete private authentication, server integrations and activity reporting
Add Fabric/Forge version builds and Paper integration, preserve permanent player identities across renames, harden session authorization, and surface privacy-conscious launcher/server activity in the panel.
2026-09-28 13:31:17 -04:00

41 lines
1.6 KiB
Markdown

# Development
**Requirements:** Rust (stable), Node 22. On Linux, also the Tauri deps: `libwebkit2gtk-4.1-dev librsvg2-dev libayatana-appindicator3-dev`.
## Panel
```bash
cd panel/web && npm install && npm run build && cd ../..
ADMIN_PASSWORD=adminadmin cargo run -p scopenet-panel # http://localhost:8080
# UI hot reload: (cd panel/web && npm run dev) # http://localhost:5173, proxies /api
```
## Launcher
```bash
cd launcher && npm install
npm run tauri dev # full desktop app
npm run dev # UI only in a browser, with a mock backend (http://localhost:1420)
```
Browser mock scenarios: `?mock=setup`, `?mock=login`, `?mock=progress`.
Build-time options (environment variables when building): `SCOPENET_PANEL_URL`, `SCOPENET_LOCK_PANEL=1`, `SCOPENET_REPO=owner/repo`.
## Tests
```bash
cargo test --workspace # unit + panel API tests
cargo test -p scopenet-core --test online -- --ignored # real installs (needs internet, ~2 GB)
(cd panel/web && npm run check) && (cd launcher && npm run check)
cargo fmt --all && cargo clippy --workspace --all-targets -- -D warnings
```
## Releasing
Push a tag `vX.Y.Z` or run the **Release** workflow. It stamps the version into `Cargo.toml` and `tauri.conf.json`, builds the NSIS installer on Windows, pushes the multi-arch panel image to GHCR, and publishes the release.
## Server integrations
See [server integration builds and validation](server-integration.md#build-and-verify). The Java modules live under `integrations/` and the release workflow publishes the per-loader/per-version JARs.