这是包含 https://seatunnel.apache.org 的所有源代码的存储库。
本指南将指导您如何为SeaTunnel的网站做出贡献。
main为默认主分支,修改请先fork到自己的仓库,然后在main分支上进行开发修改。
main 默认分支
asf-site 官网正式环境 通过https://seatunnel.apache.org 访问
asf-staging 官网测试环境 通过https://seatunnel.staged.apache.org 访问
本网站是使用node编译的,使用的是Docusaurus框架组件
- 下载并安装 nodejs(version>14)
- 克隆代码到本地
git clone git@github.com:apache/seatunnel-website.git - 运行
./tools/build-docs.sh从 apache/seatunnel 中拉取、准备文档。如果想要了解更多细节和操作请阅读文档如何工作 - 运行
npm install来安装所需的依赖库。 - 在根目录运行
npm run start,可以访问http://localhost:3000查看站点英文模式预览 - 在根目录运行
npm run start-zh,可以访问http://localhost:3000查看站点的中文模式预览 - 要生成静态网站资源文件,运行
npm run build。构建的静态资源在build目录中。
├── LICENSE
├── Logo.png
├── README.md
├── README_ZH.md
├── babel.config.js
├── blog
├── user_cases
├── community // 社区
├── docusaurus.config.js
|-- download // 下载
├── faq // Q&A
├── i18n
│ └── zh-CN // 国际化中文
│ ├── docusaurus-plugin-content-blog
│ ├── docusaurus-plugin-content-docs
│ ├── docusaurus-plugin-content-docs-community
│ ├── docusaurus-plugin-content-docs-download
│ ├── docusaurus-plugin-content-docs-faq
│ └── docusaurus-theme-classic
├── package.json
├── sidebars.js
├── sidebarsCommunity.js
├── src
│ ├── components
│ ├── css
│ ├── js
│ ├── pages
│ │ ├── home
│ │ ├── index.tsx
│ │ ├── team
│ │ ├── user
│ │ └── versions
│ └── styles
├── static // 静态资源
│ ├── doc // 文档的静态资源
│ │ ├── image // 文档通用图片
│ │ ├── image_en // 英文文档图片
│ │ └── image_zh // 中文文档图片
│ ├── home // 首页的图片
│ ├── image // 模块公用图片
│ └── user // 用户的图片
├── tools
│└── build-docs.sh // 文档同步脚本
├── tsconfig.json
├── versioned_docs // 版本文档
│ ├── version-2.0.5
├── versioned_sidebars // 版本 sidebars
│ ├── version-2.0.5-sidebars.json
├── versions.json // 版本
全部采用小写方式, 以中下划线分隔,有复数结构时,要采用复数命名法, 缩写不用复数
正例: scripts / styles / components / images / utils / layouts / demo_styles / demo-scripts / img / doc
反例: script / style / demoStyles / imgs / docs
全部采用小写方式, 以中划线分隔
正例: render-dom.js / signup.css / index.html / company-logo.png
反例: renderDom.js / UserManagement.html
图片资源统一放在static/{模块名}下
css等样式文件放在src/css目录下
除了首页、团队、用户、Docs>All Version 模块页面外,其余页面都能通过底部的'Edit this page'按钮 直接跳转至对应的github的资源修改页
访问页面 https://seatunnel.apache.org/
位于 src/pages/home
├── home
├── index.jsx
├── index.less
└── languages.json
访问页面 https://seatunnel.apache.org/zh-CN/team
位于 src/pages/team
├── team
├── index.js
├── index.less
├── languages.json
└── github-avatars.json
团队成员头像使用 Base64 编码存储,不依赖外部 GitHub 资源。当有新成员加入或需要更新头像时:
- 修改
languages.json,在pmc或committer数组中添加新成员信息:
{
"apacheId": "newmember",
"githubId": "newmember",
"name": "New Member",
"userId": "12345678" // GitHub 用户 ID(从 https://api.github.com/users/{githubId} 获取)
}- 运行头像获取脚本:
node tools/fetch-team-avatars.js该脚本会:
- 从 GitHub 下载所有成员头像
- 转换为 Base64 并保存到
github-avatars.json - 更新
languages.json中的userId字段
访问页面 https://seatunnel.apache.org/zh-CN/user/
位于 src/pages/user
├── user
├── data.json
├── images.json
├── index.js
├── index.less
└── languages.json
访问页面 https://seatunnel.apache.org/zh-CN/versions/
位于 src/pages/versions
└── versions
├── config.json
├── index.js
└── index.less
- 1、在本地运行
npm run version replace_by_target_version以复制文档。 - 2、修改
/src/pages/version/config.json中的最新的版本以及历史版本。