bridge: REQ-2026-04-16-modpack-installer-tweaks — 7 UI tweaks before Holly sees it

This commit is contained in:
Claude
2026-04-16 06:30:22 +00:00
parent 6f66a181dd
commit f3e12beb2a

View File

@@ -0,0 +1,63 @@
# REQ-2026-04-16-modpack-installer-tweaks
**From:** Chronicler #93
**Date:** 2026-04-16
**Priority:** HIGH — needs done before Holly sees it tomorrow
**Status:** PENDING
**Linked Task:** #101 follow-up tweaks
## Context
Modpack Installer is deployed and working. Michael reviewed the UI and has 7 tweaks before Holly sees it tomorrow.
---
## Tweaks
### 1. Node Selector — Show Current Usage
Replace the plain NC1/TX1 dropdown with live RAM and disk usage per node. Query Pterodactyl Client API for each node's resource usage. Display inline under each option:
- `❄️ NC1 — Charlotte | RAM: 42GB / 64GB | Disk: 1.2TB / 2TB`
- `🔥 TX1 — Dallas | RAM: 38GB / 64GB | Disk: 900GB / 2TB`
User picks the node, you can see the headroom. No auto-selection.
### 2. Disk Space Field
Add a disk allocation field (MB) alongside RAM. Pre-fill from provider API pack size estimate if available. Required before install.
### 3. Smart JVM — Auto-Inject Aikar Flags
Add a JVM Arguments field that auto-populates with Aikar G1GC flags based on RAM allocation. Recalculates when RAM changes. Editable override. Use the same flags already in Pterodactyl startup commands across the fleet — substitute RAM value into -Xms and -Xmx.
### 4. Spawn Type — Add Vanilla + Rename
- `vanilla` — "Vanilla (no spawn changes)" ← NEW DEFAULT
- `standard` — "Standard" (drop the Bitch Bot parenthetical)
- `skyblock` — "Skyblock (no spawn paste)"
- `has_lobby` — "Has Lobby (pack provides its own)"
### 5. Java Version Field
Auto-select based on MC version:
- 1.16.x and below → Java 8
- 1.17.x → Java 17
- 1.18.x1.20.x → Java 17
- 1.21.x and above → Java 21
Pre-fill on pack selection. Editable dropdown (8, 17, 21). Passed to Pterodactyl egg startup config.
### 6. Port Allocation
Auto-assign next available port on selected node. Query existing servers on that node via Pterodactyl API, find highest used port in Minecraft range (2556525700), assign next. Show as read-only with a "Re-roll" button. No manual entry.
### 7. Resource Estimates — Surface in UI
Show mod count and estimated pack size on the pack details card. Use these to drive RAM and disk pre-fill suggestions.
---
## Files to Touch
- `src/views/admin/modpack-installer/_pack_details.ejs`
- `src/routes/admin/modpack-installer.js`
- `src/services/providerApi/curseforge.js`
- `src/services/providerApi/modrinth.js`
---
## Deploy
Standard pattern. No new migrations needed.