如何运作
您的输入进入,部署好的网站产出,而所有运营部分都在旁边。
把 Foundation 理解为一条方向单一、边界清晰的流程最容易:您拥有的东西进入,产出的是一个由您自己托管的静态网站,并连接到支撑业务的系统。
- 站点自身的输入、Foundation 的机制、您部署好的网站
- 外部系统位于 Foundation 旁边,而不是内部
- 以下所有内容都可以在仓库中验证
您提供的输入
流程左侧的一切都属于您,并且始终如此。其中没有平台代码。
配置
标识、语言、导航、功能开关和界面决策 —— 经过校验的设置,而不是分散的常量。
内容
您的页面与集合是仓库中的文件,每个都有自己的标题与正文。
翻译
每种语言的界面字典,以及该语言的内容目录。
品牌与资源
标志、favicon、社交预览以及任何可选图形,各自处于已命名的角色中。
这些都可以修改,而不触碰基础的架构。
Foundation 对它们做了什么
Foundation 读取输入并产出网站。这是您不必自己构建的部分,它在构建和部署时运行,而不是让访客等待。
1
校验
配置与字典会按 schema 检查,因此写错的设置会让构建失败,而不会到达访客。
2
内容与路由
页面通过内容接口加载,获得稳定的地址,并在缺少翻译时按页面回退到默认语言。
3
呈现
内容与标识由共享的令牌系统组合,支持浅色或深色,并适配各种屏幕宽度。
4
可见性与元数据
标题、规范地址、语言标注、结构化数据,以及站点地图与 robots 输出都由您的配置生成。
5
集成点
在您启用能力的位置,Foundation 绘制连接并把访客意图交给您的服务商。
6
输出
一个静态网站,构建并部署到您自己的账号与域名。
这里没有租用的服务:同一个仓库可以在任何您能运行它的地方构建。
在 Foundation 旁边运行的东西,而不是内部
Foundation 表达意图 —— 预约、获取路线、发送消息 —— 而意图背后的目标由您决定。它本身不会变成那些系统。
- 预订与排期
- 咨询与消息接收
- 地图与路线
- 分析
- CRM 与客户数据
- 支付与财务
- 客户账号与登录
- 您的业务已在使用的其他系统
外部服务通过集成点连接;服务保留自己的数据、规则和账号。
从获取 Foundation 到您自己维护的网站
十个实际步骤。细节在仓库手册中,本页展示工作的形态。
1
获取
把公开仓库克隆或复刻到自己的账号。
2
运行
安装并启动,在修改任何内容之前看到可以运行的网站。
3
配置
在配置中定义标识、语言、导航和功能开关。
4
应用品牌
用您自己的标志、favicon 和预览替换已命名的视觉角色。
5
撰写内容
把页面和集合写成仓库中的文件。
6
选择能力
只启用需要的部分;未使用的能力不会添加路由或占位内容。
7
连接服务商
把每个已启用的集成点指向您已在使用的服务。
8
验证
运行质量关卡和浏览器验证,让问题在访客之前被发现。
9
部署
构建并部署到您自己的账号与域名。
10
维护
把内容和配置保留在您手中,并在您决定时吸收后续改进。
本站不会成为 GitHub 手册的第二份副本。
谁拥有什么
Foundation 是您持有的基础设施,而不是租用的服务。分工刻意保持简单。
您拥有
- 配置、标识与导航
- 内容与集合
- 语言字典与翻译
- 品牌与全部图形
- 服务商选择及其账号
- 您的托管账号、域名与部署
- 您或您的供应商日后添加的一切
Foundation 拥有
- 可复用的架构与强制执行的边界
- 呈现机制与设计令牌
- 路由与内容管线
- 配置校验
- 集成点
- 验证基础设施
您也可以离开,而您拥有的一切都会随之带走:仓库就是您的来源。
修改某项内容会发生什么
两条刻意的规则让这件事可预测:内容决定是否存在,配置决定如何呈现,二者都不能悄悄创造对方。
站点名称、标语或描述
页头、页脚、页面标题、社交元数据与结构化数据。
页面自身的文件
该页面的内容,以及生成的站点地图。
字典文件
该语言的界面文案。
强调色令牌
全站的品牌元素与强调元素。
标志、favicon 或预览资源
仅对应的视觉角色。
导航配置
菜单的顺序与标签,但从不改变页面是否存在。
功能开关
该能力的路由与界面是否出现。
营业地点
该地点的营业状态、地址、路线与结构化数据。
缺少的可选内容不会绘制任何东西:没有占位页面、没有借用的图形,也没有空壳。
为什么错误的修改会提前失败
配置是在网站构建时检查,而不是在访客到来时,因此错误会立即显现。
- 未知或拼写错误的设置会被拒绝,而不是被忽略
- 结构无效的值会让构建失败,并指明该设置
- 已配置但不完整的能力会失败,而不是静默地什么都不绘制
- 声明了语言却没有字典会失败,而不是悄悄显示另一种语言
因此循环是:修改文件、构建、看到真相,而不是在生产环境中发现它。
在不丢失工作的情况下吸收改进
您的配置、内容、字典和资源都位于各自的区域,这正是无需重写网站就能吸收后续改进的原因。
- 升级时网站自有的区域仍属于您
- 由您决定何时吸收改进,而不是被推动
- 仓库记录了什么发生了变化以及原因,因此决策有依据
这是已记录的模型。它不是自动更新服务,项目也不主张提供它。
从可以运行的基础开始
阅读功能,看看两个已经在其上运行的企业,然后从已经可以运行的部分开始。