Twenty 文档站实战指南:基于 Mintlify 的多语言文档体系构建与导航生成机制

发布时间:2026/9/8 20:54:54

Twenty 文档站实战指南:基于 Mintlify 的多语言文档体系构建与导航生成机制 Twenty 文档站实战指南基于 Mintlify 的多语言文档体系构建与导航生成机制【免费下载链接】twentyThe open alternative to Salesforce, designed for AI.项目地址: https://gitcode.com/GitHub_Trending/tw/twenty本文以 Twenty开源 CRM仓库中的packages/twenty-docs文档包为对象系统讲解 Twenty 官方文档站的完整构建与本地运行流程如何用 Mintlify 在本地预览文档、如何按 MDX 规范编写页面与插图、以及基线导航结构 Crowdin 翻译 生成脚本三件套如何共同产出多语言docs.json。读完本文你可以独立完成文档页面的新增与修改、正确运行导航/路径常量的生成命令并理解 Twenty 文档站多语言切换背后的工程化设计。一、文档包概览文档站在 monorepo 中的位置Twenty 的官方文档由 packages/twenty-docs 目录承载基于 Mintlify 构建。从 package.json 可以看到关键依赖与版本约束核心依赖mintlify版本^4.2.790负责站点渲染与本地开发服务engines字段要求 Node.js^24.5.0、Yarn^4.0.2并且通过npm: please-use-yarn明确禁止使用 npm与整个 monorepo 的 Yarn 工作区约定一致开发依赖中引用了twenty-sharedworkspace:*与vitest说明文档脚本需要复用共享包中的常量如支持的语言列表并配有单元测试。按 README 的说明文档内容分为三大部分内容板块规模目录User Guide用户指南46 页user-guide/Developers开发者文档24 页developers/入门内容Getting Started含核心概念等getting-started/翻译内容则按语言存放在l/language/下当前仓库覆盖ar、cs、de、es、fr、it、ja、ko、pt、ro、ru、tr、zh等 13 个非英语语言目录每个目录约 200 个翻译后的 MDX 页面。二、本地开发dev / validate / lint 三类命令文档站通过 Nx 工作区管理project.json 中定义了dev、validate、lint、fmt、test五个 target其中dev与validate分别直接执行mintlify dev和mintlify validate工作目录为{projectRoot}即packages/twenty-docs。2.1 本地预览在 Twenty monorepo 根目录下执行npx nx run twenty-docs:dev启动后文档站运行在http://localhost:3000。由于 Mintlify 会监听文件变化编辑任何 MDX 页面都会即时反映在浏览器中这也是官方推荐的贡献流程中的本地验证环节。2.2 构建校验# Validate the documentation build npx nx run twenty-docs:validate该命令调用mintlify validate用于在提交前检查文档构建的合法性如断链、配置错误等。2.3 Lintoxlint 自研 MDX 规则project.json中的linttarget 实际是两条串行命令commands: [ npx oxlint -c .oxlintrc.json ., npx tsx scripts/lint-mdx.ts ]第二条命令运行 scripts/lint-mdx.ts这是一个非常有针对性的自研检查器解决的是Crowdin 翻译往返过程中的占位符丢失问题。文件头部的注释说明了动机Crowdin 会把正文中的foo解析为 HTML 标签而非字面文本导致翻译后的页面里尖括号占位符被丢弃或变形而花括号写法{foo}可以安全往返。因此该脚本递归收集packages/twenty-docs下所有.mdx文件忽略node_modules、l、images、scripts目录即只检查英文源页面先精确识别 fenced code block正确处理了不同长度的反引号围栏与行内 code 区间避免误报代码中的内容对正文中出现的xxx形式占位符排除真实 HTML 元素名与 URL 前缀场景逐处报错提示reads as a tag in Crowdin, use {xxx} instead发现任何违规即以退出码 1 终止。这一机制保证了所有需要进入翻译流程的模板变量都使用对翻译平台安全的写法。三、内容编写规范MDX 页面、Frontmatter 与图片3.1 MDX 页面格式所有文档页面使用 MDX 格式并携带 frontmatter基本结构如下--- title: Page Title description: Page description image: /images/path/to/image.png --- Your content here...title页面标题用于导航展示description页面描述会用于 SEO 与摘要image页面级图片供分享卡片等场景使用。新增或修改页面的入口目录为user-guide/ —— 用户文档developers/ —— 开发者文档。3.2 添加图片将图片放入 images/ 目录该目录下已有core/、docs/、lab/、releases/、user-guide/等子目录其中user-guide/下有近 150 张用户指南截图在 MDX 中直接引用Alt text或使用 Mintlify 的 Frame 组件包裹以获得统一边框样式Frame img src/images/your-image.png altDescription / /Frame四、导航与国际化架构从 base-structure 到 docs.json 的完整链路这是文档站工程化设计的核心。README 的 Editing Content 与 Configuration 两节定义了五个关键文件及其职责分工文件职责是否上传 Crowdinnavigation/base-structure.jsontabs / groups / 图标 / 页面 slug 的唯一事实源Source of truth仅英文否navigation/navigation.template.json自动生成的翻译模板仅含 labels是唯一上传统译平台的文件l/language/navigation.json从 Crowdin 拉回的各语言标签文件仅含 labels页面 slug 始终来自基线结构否docs.json生成的 Mintlify 站点配置导航部分由脚本重写—package.json / project.json依赖、脚本与 Nx 工作区配置—4.1 base-structure.json 的结构navigation/base-structure.json 顶层是tabs数组每个 tab 含key、label与groupsgroup 可含icon如database、cloud-arrow-up与pages。pages既可以直接是页面 slug 字符串如user-guide/data-model/overview也可以是嵌套子 group 对象如 contenteditable="false">【免费下载链接】twentyThe open alternative to Salesforce, designed for AI.项目地址: https://gitcode.com/GitHub_Trending/tw/twenty创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/9/8 20:54:54

DeepSeek Harness详解:Agent运行时机制与工程实践

我最早接触到 DeepSeek Harness 这个名字,是在一个 Agent 项目的技术选型讨论群里。当时群里有人把问题抛出来:现在调用大模型接口的路子已经够简单了,为什么还要套一层 Harness?这个问题其实问到了点子上。如果你只是写个脚本调一…

2026/9/8 20:49:54

Hermes:基于大模型的自动化代码评审工具实践指南

先把结论放前面:我自己在 GitHub 仓库上跑过一段时间的 Hermes,它不只是一个 PR 辅助小玩具,而是能把“开 PR → 读 diff → 给评论 → 挂状态”这整条链路交给自动化代码评审去执行的一整套方案。如果你还在靠人工逐条翻 Pull Request&#…

2026/9/8 20:49:54

MAX31855热电偶信号调理芯片原理与工业应用指南

简介:本资源是一套基于STM32F4平台的MAX31855热电偶温度检测完整嵌入式工程,面向嵌入式开发初学者与工业测温应用开发者,解决热电偶高精度测温中冷端补偿、SPI通信驱动、异常诊断及低功耗管理等核心实现难题。包内共193个文件,涵盖…

2026/9/8 22:00:08

如何快速精简 Windows 11 镜像,到底能省多少

如何快速精简 Windows 11 镜像,到底能省多少 【免费下载链接】tiny11builder Scripts to build a trimmed-down Windows 11 image. 项目地址: https://gitcode.com/GitHub_Trending/ti/tiny11builder Windows 11 出厂就带一堆你用不上的应用,官方…

2026/9/8 22:00:08

数字藏品交易平台源码实测:从搭建部署到合规避坑全解析

简介:一份价值600元的仿鲸探模式NFT数字藏品艺术品交易平台源码,附完整搭建教程,面向想快速入局数字艺术品的开发者、创业者和收藏家。平台涵盖铸造发行、二级市场挂售、盲盒商城、碎片合成与邀请有礼等完整业务闭环,后台支持灵活…

2026/9/8 22:00:08

Codex报错排查指南:15种常见问题从安装到运行时全搞定

1. 排查前的准备工作:先看懂 Codex 的报错结构如果你最近在用 Codex 做 AI 编程辅助,应该有过这种经历:明明上一秒还跑得好好的,下一秒就蹦出一串看不懂的报错,什么config.toml、SystemExit、422全都来了。我在本地环境…

2026/9/8 21:55:07

基于人脸识别与步态识别的智能门禁系统设计与实现

简介:基于人脸识别与步态识别的智能门禁系统,是一份计算机视觉方向的毕设/课设源码包,附带系统说明文档,面向计科、人工智能、数据科学等专业在校生及开发人员。项目借助Python及开源视觉库实现人脸、步态双重生物特征认证&#x…

2026/9/8 7:15:10

超人会飞不算本事:系统稳定依赖清晰规则与边界设计

开头先不绕弯子。“#斯坦李吐槽dc 所以超人是无缘无故会飞的嘛哈哈哈哈哈哈哈锤哥真是技术人才啊!#雷神 #复联”这类调侃式短标题,第一波冲击力在于它把两个宇宙的角色塞进同一个吐槽箱里,但细想一下就能发现,它真正碰到的根本不是…

2026/9/8 7:15:15

超人VS蜘蛛侠:拆解超级IP的影响力与传播方法论

把“蜘蛛侠 vs 超人”放在 CSDN 上聊,可能很多人第一反应是走错片场了。但如果把这两个角色看成“两个持续运营了 80 多年的文化产品”,你会发现,这场比较本质上是两个不同 IP 策略的长期结果对比:超人赢在定义了整个超级英雄题材…

2026/9/8 7:15:10

基于CNN的调制信号识别:MATLAB实现时频图分类实战

简介:本资源是一套面向通信工程与信号处理方向学习者、研究者的深度学习实践方案,聚焦调制信号自动检测与识别这一典型无线通信任务,解决传统方法依赖人工特征、低信噪比下性能下降等痛点。压缩包共12个文件(10.73MB)&…

2026/9/8 0:01:49

踩多轮坑才跑通|OpenClaw 3.1.0 双平台本地 AI 自动化搭建实操实录

🔹 工具简述 OpenClaw 是一款备受开发者与办公人群青睐的开源本地智能工具,凭借离线本地运行、可视化图形面板、全流程自主任务处理三大核心特点,积累了众多忠实用户。与普通对话类 AI 产品不同,它能够直接调用电脑的软硬件操作权…

2026/9/8 0:01:50

拒绝复杂命令行,Hermes Agent 一键包快速解锁智能办公能力

🔍前言 不少想要体验 Hermes Agent 办公能力的使用者,往往会被复杂的环境配置拦住使用脚步。手动下载匹配依赖、反复调整系统目录、处理命令行持续报错、修复权限异常、补全丢失核心文件等一系列操作,对普通使用者而言门槛较高,很…

2026/9/7 16:23:03

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/7 22:46:00

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/7 22:45:59

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码