You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: split site into public landing (/) + game Mini App (/game) (#279)
Serve a crawler-friendly investor/user landing at the root and move the
Vue Mini App under /game, so cubeworlds.club previews and SEO work while
the game keeps running inside Telegram.
- src/landing/: static landing (index.html) + root-served tonconnect
manifest and logo; screen gallery of every Mini App screen and state
- vite base '/game/'; vue-router uses import.meta.env.BASE_URL
- server.ts serves landing at /, frontend/dist at /game/, with a
path-split SPA fallback (/api -> 404, /game* -> game, else -> landing)
in both dev (Vite appType 'custom') and prod
- bot Mini App launch URLs (help, removed-commands, menu button) now open
${WEB_APP_URL}/game; WEB_APP_URL itself stays root for the API/webhook
- menu button update is now guarded + idempotent: getChatMenuButton,
compare URL/label, set only when different, log the / -> /game migration
Requires a one-time BotFather change of the Direct Link Mini App URL to
https://cubeworlds.club/game (not settable via Bot API).
0 commit comments