<feed xmlns='http://www.w3.org/2005/Atom'>
<title>minecraft-ui/src/db.rs, branch master</title>
<subtitle>Everyone-is-equal self-hosted UI for minecraft server hosting.
</subtitle>
<id>https://git.2137697.xyz/minecraft-ui/atom?h=master</id>
<link rel='self' href='https://git.2137697.xyz/minecraft-ui/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.2137697.xyz/minecraft-ui/'/>
<updated>2026-07-29T09:19:12Z</updated>
<entry>
<title>Enable/disable mods, batch toggle &amp; delete</title>
<updated>2026-07-29T09:19:12Z</updated>
<author>
<name>salmonik</name>
<email>salmonik@tuta.io</email>
</author>
<published>2026-07-29T09:19:12Z</published>
<link rel='alternate' type='text/html' href='https://git.2137697.xyz/minecraft-ui/commit/?id=1102f17a93111dca640d790cf9963a9ec9312096'/>
<id>urn:sha1:1102f17a93111dca640d790cf9963a9ec9312096</id>
<content type='text'>
- Add  column to mods table (auto-migrated)
- Toggle endpoint: rename .jar ↔ .jar.disabled on disk, flip DB flag
- Batch toggle &amp; delete with checkboxes + JS helper (fixes nested-form bug)
- Raw Vec&lt;(String,String)&gt; form deserialization fixes 'duplicate field' error
- Batch action bars at top and bottom of mod list
- Uploads default to enabled=1, rescan skips .jar.disabled files
</content>
</entry>
<entry>
<title>Add per-instance mod management with client-side detection</title>
<updated>2026-07-28T23:03:24Z</updated>
<author>
<name>salmonik</name>
<email>salmonik@tuta.io</email>
</author>
<published>2026-07-28T23:03:24Z</published>
<link rel='alternate' type='text/html' href='https://git.2137697.xyz/minecraft-ui/commit/?id=74d2ada067bd2fd9436710ab7ac260e0eddf1314'/>
<id>urn:sha1:74d2ada067bd2fd9436710ab7ac260e0eddf1314</id>
<content type='text'>
- New mod validation engine (src/mods.rs) with constant-pool class-file
  scanning: detects server-side content (block, tileentity, command,
  worldgen) vs client-only API (gui, renderer, forge/client)
- 7 client-only mods correctly detected (AppleSkin, CraftingTweaks,
  Durability101, EnchantmentDescriptions, InventoryHUD, MouseTweaks,
  TrashSlot); 51 server-capable; 1 unknown
- Routes + templating for mod upload (jar/zip), listing, delete, rescan
- Multipart upload with 500MB limit (bypasses axum's default 2MB)
- Per-instance mod summary card on edit page
- Whitelist toggle checkbox on edit page (persisted, drives ENABLE_WHITELIST)
- Dynamic Java image tag (java8/java17/java21) based on MC version
- Class scan is informational-only; rejection based on metadata side=CLIENT
- has_modpack flag cleanup on mod delete
- Remove hx-boost from &lt;body&gt; (was corrupting multipart uploads)
</content>
</entry>
<entry>
<title>first stable</title>
<updated>2026-07-12T17:38:03Z</updated>
<author>
<name>salmonik</name>
<email>salmonik@tuta.io</email>
</author>
<published>2026-07-12T17:38:03Z</published>
<link rel='alternate' type='text/html' href='https://git.2137697.xyz/minecraft-ui/commit/?id=ae7ef10b67737f08a86743f687bca30a12e9e17a'/>
<id>urn:sha1:ae7ef10b67737f08a86743f687bca30a12e9e17a</id>
<content type='text'>
</content>
</entry>
</feed>
