# tiny-world-builder **Repository Path**: xingxing085/tiny-world-builder ## Basic Information - **Project Name**: tiny-world-builder - **Description**: No description available - **Primary Language**: Unknown - **License**: AGPL-3.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2026-05-15 - **Last Updated**: 2026-05-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Tiny World Builder Screenshot 2026-05-11 at 07 09 24 ## Run ```bash npm run dev # serves http://localhost:3000/tiny-world-builder # use another port with: npm run dev -- 3001 # or open directly open tiny-world-builder.html ``` ## Deploy The app deploys as a static site on Vercel or Netlify. Both host configs run `./publish.sh` and serve the generated `dist/` directory. Three.js r128 and GLTFLoader are self-hosted from `vendor/three/` so deploys do not depend on runtime CDNs. ```bash npm test npm run build # Vercel vercel deploy # Netlify netlify deploy --build # or connect the repo in Netlify; netlify.toml supplies build/publish settings ``` ## Controls | Action | Input | | ----------------- | -------------------------------------- | | Place | click a cell | | Erase | `E` then click, or pick the eraser | | Orbit | drag | | Zoom | scroll wheel | | Stack/enhance item | click the same object tool on an existing object (max 8) | | Raise/lower terrain | `R` / `F` over the hovered cell | | Switch tool | `1`–`9`, then letter shortcuts shown in the toolbar | | Toggle camera | `P` or `I` (isometric ⇄ soft ⇄ perspective) | | Reset to preset | reset button | | Clear to grass | `C` | ## Tools `Grass` · `Path` · `Dirt` · `Water` · `Stone` · `Lava` · `Sand` · `Snow` · `House` · `Tree` · `Fence` · `Rock` · `Bridge` · `Crop` · `Corn` · `Wheat` · `Pumpkin` · `Carrot` · `Sunflower` · `Tuft` · `Flower` · `Bush` · `Cow` · `Sheep` · `Erase`. Terrain/object rules are normalized by the renderer: crops force dirt underneath, bridges force water, and ordinary objects do not float on water. Paths, shorelines, water foam, bridges, fences, castle walls, houses, and rocks are adjacency-aware — placing a neighbor re-renders surrounding cells so roads join, rivers get banks, bridge direction updates, fence walls connect, house clusters form L/T/+/square buildings, and rock cells grow into craggy outcrops. ## Architecture Single `