diff --git a/frontends/tpl-a/.gitignore b/frontends/tpl-a/.gitignore new file mode 100644 index 0000000..3d2bc62 --- /dev/null +++ b/frontends/tpl-a/.gitignore @@ -0,0 +1,2 @@ +/dist/ +/node_modules/ diff --git a/frontends/tpl-a/ASSETS.md b/frontends/tpl-a/ASSETS.md new file mode 100644 index 0000000..b1b0ea5 --- /dev/null +++ b/frontends/tpl-a/ASSETS.md @@ -0,0 +1,10 @@ +# tpl-a 机房主视觉素材 + +- 方式:内置 imagegen 工具。 +- 用途:本地纯前端设计预览首页;属于 AI 生成示意素材,不是 hn 实际机房照片。 +- 项目素材:[datacenter-hero-v1.png](public/datacenter-hero-v1.png)。原始文件另保留在 Codex generated_images,未覆盖或删除。 +- 消费位置:`src/operator.css` 中的 `.dc-hero`。 + +## 最终生成提示词 + +Use case: ads-marketing. Asset type: wide website hero background for a serious data-center network operator, HARDNERD. Primary request: architectural photograph of a modern working data center, real physical infrastructure and professional scale. Long rows of black enterprise server cabinets, fine perforated metal doors, neatly installed network equipment, restrained blue and amber status lights, overhead cable trays, clean cold aisle, polished dark floor. Photorealistic commercial architectural photography, realistic materials, strong depth and precise perspective, natural cool-white ceiling lighting, subtle cool blue reflections, no sci-fi. Composition: wide horizontal 16:9, server cabinets most prominent in right two-thirds, left third darker and less detailed to support white HTML headline overlay. Camera at human eye level, sophisticated industrial documentary mood. No people, no logos, no text, no watermark, no drawn diagrams, no cartoons, no neon laser trails. This is illustrative stock-style imagery, not an identified actual facility. diff --git a/frontends/tpl-a/README.md b/frontends/tpl-a/README.md new file mode 100644 index 0000000..67f7a78 --- /dev/null +++ b/frontends/tpl-a/README.md @@ -0,0 +1,28 @@ +# tpl-a + +版本:1.0.0。用户于 2026-10-14 确认当前效果可作为定稿方案保留,命名为 `tpl-a`,不限定用于 hn。 + +这是独立的机房网络运营商前端设计方案:写实机房首页、明暗主题、接入方案、服务控制台、网络资源、账单、文档、技术工单和账户页。设计已批准保存;业务代码接入与生产发布尚未完成。不得把设计定稿解释为可以直接上传到 Xboard 后台使用的完整主题包。 + +## 运行 + +依赖使用父级 `frontends/package.json` / lockfile 中的 Vue、Vite 与插件。父级依赖安装完成后: + +```bash +npm --prefix frontends/tpl-a run dev +npm --prefix frontends/tpl-a run build +``` + +预览地址 `http://127.0.0.1:8591/#/home`,只监听本机,构建输出 `dist/` 不纳入 Git。构建不会调用 Laravel,也不会发布到任何业务站点。 + +## 品牌与绑定 + +`template.json` 登记方案名、版本与批准状态,`site_binding:null` 表示尚未绑定 hn 或其他实例。当前 hardnerd.net / HN 文案为保留视觉效果的演示品牌;替换 `src/brand.mjs` 和 `public/logo.svg` 即可使用其他品牌。实例启动配置、数据库与 `SITE_THEME` 没有因保存本设计而切换。 + +所有价格、节点、流量和订单为演示;年付按演示月价 × 12 展示,不提交任何业务数据。AI 机房图为示意素材,生成来源与完整提示词见 [ASSETS](ASSETS.md)。 + +## 定稿保护 + +- 当前视觉作为 `tpl-a` v1.0.0 保存。新方向另建方案或版本,避免直接覆盖本定稿。 +- `approved-files.sha256.json` 记录本次运行源码与素材摘要,供恢复和核对;这不是业务测试或生产验收。 +- 本地 Git 提交保存源文件和素材;未推送、未部署。其他功能草稿与运行中的 dpl 独立保留。 diff --git a/frontends/tpl-a/approved-files.sha256.json b/frontends/tpl-a/approved-files.sha256.json new file mode 100644 index 0000000..ecd4d5c --- /dev/null +++ b/frontends/tpl-a/approved-files.sha256.json @@ -0,0 +1,18 @@ +{ + "template": "tpl-a", + "version": "1.0.0", + "approved_on": "2026-10-14", + "sha256": { + "index.html": "78eb443588cd1913b307132c77b3d75c1760b160a86538f565caa7e466796a25", + "vite.config.mjs": "12553e80844906567b9494b54c74f9711a5e4cbd8474b6ac4e98d945513f0411", + "package.json": "16c48a0e420149ae3068b477ed519e5056eedaed16ddf5eb297d2ce9bfd3c2dc", + "template.json": "c964ca32de98070e6a6271dc4764bde0dbd863456eb52cfdb72a0ce64812220a", + "src/App.vue": "a3eede460b8bb5af3a866c4b969d5a6e33b918e21ea51c24eb8945cf64a59c50", + "src/NetworkLanding.vue": "9583744cb19ac97a47352536dcdf05ad1b626dcfb94ad663a74d20a639f8c212", + "src/brand.mjs": "5929fc76144d3f638db021f097d9cfedfcb9637a4f20558cff178d0a519fb48c", + "src/main.js": "c47b1a723188ca2ad18ab33f4b2c982b3113cc8a616772eb206196ed133d311d", + "src/operator.css": "1037e5edbb19be5db3fb66a9f1efdc09f5da800fc63f088294472632eb8d7d3d", + "public/datacenter-hero-v1.png": "0294026e45c0a3eff894c67e27bc8e2a393cb2ce6c6a15668c167ab93eda07ca", + "public/logo.svg": "a5412a612aab7bb416e63dea3d1a636a6b307adf73e89ec961d45f958f652711" + } +} diff --git a/frontends/tpl-a/index.html b/frontends/tpl-a/index.html new file mode 100644 index 0000000..f48fb5d --- /dev/null +++ b/frontends/tpl-a/index.html @@ -0,0 +1 @@ +hardnerd / 全球连接
diff --git a/frontends/tpl-a/package.json b/frontends/tpl-a/package.json new file mode 100644 index 0000000..a0421ca --- /dev/null +++ b/frontends/tpl-a/package.json @@ -0,0 +1,9 @@ +{ + "name": "tpl-a", + "version": "1.0.0", + "private": true, + "scripts": { + "dev": "vite --config vite.config.mjs", + "build": "vite build --config vite.config.mjs" + } +} diff --git a/frontends/tpl-a/public/datacenter-hero-v1.png b/frontends/tpl-a/public/datacenter-hero-v1.png new file mode 100644 index 0000000..b489604 Binary files /dev/null and b/frontends/tpl-a/public/datacenter-hero-v1.png differ diff --git a/frontends/tpl-a/public/logo.svg b/frontends/tpl-a/public/logo.svg new file mode 100644 index 0000000..5096bb5 --- /dev/null +++ b/frontends/tpl-a/public/logo.svg @@ -0,0 +1 @@ +HN diff --git a/frontends/tpl-a/src/App.vue b/frontends/tpl-a/src/App.vue new file mode 100644 index 0000000..448392d --- /dev/null +++ b/frontends/tpl-a/src/App.vue @@ -0,0 +1,67 @@ + +