Add map import and export with durable refresh progress

This commit is contained in:
2026-10-07 19:44:49 +05:00
parent dac8650ac1
commit 1307436e65
37 changed files with 2207 additions and 85 deletions

View File

@@ -3,7 +3,16 @@
Run `npm run deploy` from the project directory. The script collects all web
source files and public assets, uploads them in one request, waits for the build,
and prints the deployment URL. It uses the [Vercel deployments API](https://vercel.com/docs/rest-api/deployments/create-a-new-deployment). The database credentials already configured in
Vercel remain there. The Minecraft rendering worker stays on its current host.
Vercel remain there. Mod captures are processed by the deployed Vercel API:
upload finalization starts background image processing with Next.js `after`,
and the authenticated dashboard resumes queued or expired jobs. The function
has a 300-second limit and uses the existing Supabase queue, Storage buckets,
retry count, and completion transaction. It processes one PNG at a time in
memory, so it needs no local capture directory or running Minecraft client.
Plugin terrain exports still require the standalone Minecraft rendering worker
on its current host. That renderer builds panoramas with Chromium and vanilla
Minecraft assets; it is separate from the deployed mod-image processor.
The script excludes Git metadata, local environment files, caches, generated
captures, tests, Java build sources, and development tools. It checks uploaded
@@ -33,5 +42,9 @@ additional Supabase credentials.
Multiplayer uses the Supabase migration described in [multiplayer.md](multiplayer.md).
Apply that migration to a new database before deploying the multiplayer web files.
Map ZIP sharing requires `20261007145000_map_sharing.sql`. Imported maps stay
private and can be played without moderation; publication is blocked. See
[map-sharing.md](map-sharing.md) for the archive format and verification.
The script targets the existing MineGeo project. Set `VERCEL_PROJECT_ID` and
`VERCEL_ORG_ID` to deploy a copy to another Vercel project.