文档版本:v1.0 最后更新:2026-04-07 11:40:54
本文档用于说明 colormaprun.com 在正式重构过程中,是否需要先落一个可对外展示、可内部联调、可逐步演进的 网站 DEMO 版,以及这个 DEMO 应该如何与当前项目已有对象、接口和 H5 方案衔接。
当前建议:
先做一个“网站 DEMO 版前台”,但不要把它做成浏览器里的完整游戏。
更准确地说,网站 DEMO 应该是:
而不应该是:
EventRelease / runtime / presentation / content bundle 再做一套网站私有数据模型结合当前项目状态,网站 DEMO 版有 4 个现实价值:
当前线上站点还是静态宣传站,能介绍产品,但不能有效展示:
DEMO 版可以先把这些“真实能力”公开展示出来。
backend 当前已经有:
/home/cards/events/{eventPublicID}/events/{eventPublicID}/playcurrentPresentationcurrentContentBundleruntime网站 DEMO 版可以成为这些摘要接口的另一层消费端,不只服务小程序,也服务网站线程。
当前商务诉求里最难讲清的一件事不是“我们能做地图游戏”,而是:
网站 DEMO 版正好可以把这些能力做成可分享链接。
如果 DEMO 版一开始就沿当前正式对象和正式摘要搭建,那么它后面不需要推倒重来,可以直接逐步升级为:
这个 DEMO 版必须服从当前项目已经定下来的几个核心边界。
参考:
当前正式产品口径已经明确:
因此网站 DEMO 应该优先承接 Event,而不是直接承接地图运行页。
参考:
当前已经定案:
因此网站 DEMO 最适合承接:
不适合承接:
参考:
当前玩家正式进入规则已经很明确:
EventReleasecurrentPresentation / currentContentBundle 表示的是已发布 release 实际绑定摘要网站 DEMO 也应遵守同一条规则。
当前做网站 DEMO,不需要再从零造一套后台。
当前可直接复用:
GET /homeGET /cards这些接口已经统一补齐活动卡片最小摘要字段:
titlesubtitlesummarystatusstatusCodetimeWindowctaTextcoverUrlisDefaultExperienceeventTypecurrentPresentationcurrentContentBundle这已经足够支撑:
当前可直接复用:
GET /events/{eventPublicID}当前最重要的公开摘要包括:
eventreleaseresolvedReleaseruntimecurrentPresentationcurrentContentBundle这已经足够支撑:
当前 backend 已准备三条标准 demo:
evt_demo_001evt_demo_score_o_001evt_demo_variant_manual_001而且它们在 Bootstrap Demo 后都直接具备:
这意味着网站 DEMO 版完全可以先围绕这三条标准 demo 起步。
参考:
当前已经有非常适合网站 DEMO 的预览策略:
这套方案天然适合网站详情页和 demo 页。
当前项目已经明确:
这意味着网站 DEMO 版可以公开承接:
当前建议把网站 DEMO 定位成:
“公开活动前台 + 只读体验样板间 + 正式体验导流入口”
可以理解为三层:
负责:
负责:
负责:
/首页不只做品牌宣传,建议同时挂出 3 条入口:
首页模块建议:
/events建议直接消费 /cards 或 /home 的卡片摘要。
最小结构:
这和现有 活动卡片列表最小产品方案 是一致的。
/events/:eventId建议直接消费 GET /events/{eventPublicID}。
最小区块:
/demo这个页面建议单独保留,不和通用活动列表混在一起。
作用:
建议固定三个 demo 卡:
/demo/:eventId建议重点展示“这套能力如何组成一场活动”,而不是只展示活动文案。
推荐区块:
presentation / content bundle / runtime 摘要说明当前最稳妥的口径不是“浏览器版正式游戏”,而是:
脚本化演示 demo
即:
这样既能展示玩法,又不破坏当前“核心主流程归原生”的边界。
直接使用现有后端摘要接口:
GET /entry/resolveGET /homeGET /cardsGET /events/{eventPublicID}其中建议为网站新增一个固定公开入口 channel,例如:
website-demo
或official-site这样网站也走“入口上下文首页”逻辑,而不是写死一套站内假数据。
网站页面只消费:
不消费:
开发态可以为了快速联调接:
/dev/demo-assets/...但正式 DEMO 页应优先基于:
currentPresentationcurrentContentBundle这样网站 DEMO 才不会和正式发布链分叉。
如果后续需要正式写网站代码,建议在仓库根目录新建:
www/
├─ src/
│ ├─ pages/
│ ├─ components/
│ ├─ features/demo/
│ ├─ features/events/
│ ├─ features/map-preview/
│ ├─ lib/api/
│ ├─ lib/normalizers/
│ └─ lib/mock/
├─ public/
└─ README.md
V1 更适合:
因此更推荐:
www/ 独立站点工程当前不建议一开始就做:
建议把网站前台拆成三层:
eventsdemomap-previewlead-forms负责把 backend 摘要结构适配成网站展示模型,例如:
CardResult -> SiteEventCardEventDetailResult -> SiteEventDetail这样后端字段后续继续演进时,网站层不会被直接打穿。
先做:
这一步先证明:
再补:
这一步用来证明:
再补:
最后再逐步进入:
如果只问一句:
网站上要不要做一个 DEMO 版?
当前答案是:
要做,但这个 DEMO 不是浏览器复刻游戏,而是用正式活动对象、正式发布摘要、只读地图预览和 H5 增强页,做一个可展示、可分享、可联调、可逐步升级成正式门户的网站前台。
这条路线的好处是: