π¦ Clawverse v1
A persistent isometric pixel-art island builder β always running, shareable with friends.
Live URL: https://ysnlpjle.gensparkclaw.com
Backend: Port 19003
Engine: Flask + SQLite + vanilla JS isometric renderer
Features
Core
- π Isometric world β 32Γ32 tile grid with terrain, objects, and Z-layers
- π¨ Tile palette β 50+ terrain tiles and objects (trees, houses, flowers, etc.)
- πΈ Snapshots β Save named world versions, restore anytime
- π Themes β Ocean Isle, Tropical, Forest, Winter, Desert
- π Progress / XP β Level up by building and receiving visitors
- π
Achievements β Unlock badges for milestones
Owner/Visitor Auth (Marathon 2)
- π Owner mode (localhost) β Full edit rights, world builder
- π Visitor mode (external) β Read-only + social actions
- π« Write endpoints protected from external access
Onboarding (Marathon 2)
- πͺ 5-step wizard for new island owners
- Welcome β Name island β Choose theme β Place first tile β Done!
Visitor Experience (Marathon 2)
- π Welcome overlay β Island greeting with name/message input
- π¬ Visitor messages β Leave a personal note when marking the island
- π Gift system β Leave one gift object per day (placed directly on island)
AI Features
- π€ AI Layout Assistant β Describe your vision, AI builds it
- 6 presets: Cozy Corner, Japanese Garden, Beach Dock, Flower Meadow, Stone Circle, Cozy Village
- Keyword matching: "japanese garden" β japanese_garden preset
- β¨ AI Tile Generation β Describe any tile, gsk generates pixel art
Real-time (Marathon 2)
- π‘ SSE events β Visitors see owner tile placements in real-time
- π₯ Presence badge β Live visitor count display
- π Presence heartbeat β 30s ping to track active visitors
Island Story (Marathon 2)
- π Bio system β Owner writes island description
- π¬ Daily message β Fresh greeting shown to visitors
- π Auto-bio β Generated from world stats if not set
Social
- πΈ Leave marks β Emoji reactions on islands
- πΊ Island registry β Register and discover other islands
- π Gifts β Visitors leave objects permanently on your island
Quick Start
# Start the backend
bash /home/azureuser/.openclaw/workspace/skills/clawverse/start.sh
# Or manually
cd /opt/clawverse/backend && python3 app.py > /tmp/clawverse-v1.log 2>&1 &
# Open in browser
# Owner: http://127.0.0.1:19003 (localhost = full edit)
# Visitor: https://ysnlpjle.gensparkclaw.com (external = read-only)
Architecture
clawverse-v1/
βββ frontend/
β βββ index.html β Single-file SPA (canvas renderer + UI)
β βββ assets/ β Static assets
βββ backend/
β βββ app.py β Flask API server (port 19003)
β βββ db.py β SQLite persistence layer
β βββ clawverse.db β SQLite database
β βββ worlds/
β βββ default.json β Current world state
βββ catalog/
β βββ catalog.json β Tile/object definitions
β βββ terrain/ β 128Γ64 isometric terrain tiles
β βββ objects/ β Object sprites
βββ progress/ β Agent progress logs
βββ README.md β This file
API Reference
Auth
| Endpoint |
Description |
GET /api/auth/mode |
{mode:"owner"|"visitor", is_owner:bool} |
World
| Endpoint |
Description |
GET /api/world |
Current world JSON |
POST /api/world/place |
Place tile (owner only) |
POST /api/world/remove |
Remove tile (owner only) |
POST /api/world/save |
Save world (owner only) |
POST /api/world/reset |
Generate fresh world (owner only) |
POST /api/world/rename |
Rename island (owner only) |
GET /api/world/stats |
Tile/object counts |
GET/POST /api/world/theme |
Get/set theme |
POST /api/world/snapshot |
Save named snapshot |
GET /api/world/history |
List snapshots |
Social & Gifts
| Endpoint |
Description |
POST /api/visit |
Leave emoji mark |
GET /api/visits |
Recent visitors |
GET /api/gifts |
Gifts on island |
POST /api/gifts/leave |
Leave a gift (1/visitor/day) |
AI Layout
| Endpoint |
Description |
GET /api/ai/layouts |
List layout presets |
POST /api/ai/layout/suggest |
Suggest layout from text |
POST /api/ai/layout/apply |
Apply layout (owner only) |
Story & Onboarding
| Endpoint |
Description |
GET/POST /api/story |
Island bio/daily message |
GET/POST /api/onboarding/status |
Onboarding state |
Presence & SSE
| Endpoint |
Description |
GET /api/presence |
Visitor count |
POST /api/presence/ping |
Heartbeat |
GET /api/events |
SSE real-time stream |
Progress
| Endpoint |
Description |
GET /api/progress |
XP, level, achievements |
POST /api/progress/event |
Record action |
Development
# Check backend logs
tail -f /tmp/clawverse-v1.log
# Test API
curl -s http://127.0.0.1:19003/api/status
curl -s http://127.0.0.1:19003/api/auth/mode # β {mode:"owner"}
# Validate frontend
python3 -c "open('/opt/clawverse/frontend/index.html').read(); print('OK')"
# Reset world
curl -s -X POST http://127.0.0.1:19003/api/world/reset
Iteration History
| Iteration |
Features |
| Marathon 1 |
Core isometric engine, tile catalog (50+ tiles), AI tile generation, progress/XP/achievements, social marks, island registry, multi-world, snapshots, themes, dashboard |
| Marathon 2 |
Owner/visitor auth, onboarding wizard, visitor welcome+messages, AI layout presets, island story/bio, real-time SSE presence, gift system, visual tile polish, docs |
Built with π¦ by the Clawverse AI team