This is the repository containing all the source code of https://seatunnel.apache.org.
This guide will guide you how to contribute to the SeaTunnel website.
apache/seatunnel-website is the website shell repository.
- Edit current docs content in
apache/seatunnelunderdocs/enanddocs/zh. - Edit website shell concerns in
apache/seatunnel-website, such as the homepage, navigation, version entry, search, styles, rendering, community pages, and versioned docs snapshots.
If you are changing a page under /docs for the current unreleased docs, the source of truth is apache/seatunnel, not this repository.
main is the default branch. For all modifications, please fork first, and then proceed on the main branch.
main #default branch
asf-site #The official environment of asf-site official website is accessed through https://seatunnel.apache.org
asf-staging #The asf-staging official website test environment is accessed through https://seatunnel.staged.apache.org
This website is compiled using node, using Docusaurus framework components
- Download and install nodejs (version>14)
- Clone the code to the local
git clone git@github.com:apache/seatunnel-website.git - Run
./tools/build-docs.shto fetch and prepare current docs from apache/seatunnel. For more details, see how our docs work - Run
npm installto install the required dependent libraries. - Run
npm run startin the root directory, you can visit http://localhost:3000 to view the English mode preview of the site - Run
npm run start-zhin the root directory, you can visit http://localhost:3000 to view the Chinese mode preview of the site - To generate static website resource files, run
npm run build. The static resources of the build are in the build directory.
├── LICENSE
├── Logo.png
├── README.md
├── README_ZH.md
├── babel.config.js
├── blog
├── community // Community
├── docusaurus.config.js
|-- download // Download
├── faq // Q&A
├── i18n
│ └── zh-CN // Internationalized Chinese
│ ├── 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 // static resources
│ ├── doc // Static resources for documentation
│ │ ├── image // Document common image
│ │ ├── image_en // English document picture
│ │ └── image_zh // Chinese document picture
│ ├── home // Homepage pictures
│ ├── image // Module common pictures
│ └── user // user picture
├── tools
│└── build-docs.sh // Document sync script
├── tsconfig.json
├── versioned_docs // Version documentation
│ ├── version-2.0.5
├── versioned_sidebars // Version sidebars
│ ├── version-2.0.5-sidebars.json
├── versions.json // Version
Use all lowercase, separated by underscores. If there is a plural structure, use plural nomenclature, and do not use plural abbreviations
Positive example: scripts / styles / components / images / utils / layouts / demo_styles / demo-scripts / img / doc
Counter example: script / style / demoStyles / imgs / docs
All lowercase, separated by a dash
Positive example: render-dom.js / signup.css / index.html / company-logo.png
Counter example: renderDom.js / UserManagement.html
Image resources are unified under static/{module name}
css and other style files are placed in the src/css directory
Except for the homepage, team, user, Docs>All Version module page, all other pages can be directly jumped to the corresponding github resource modification page through the'Edit this page' button at the bottom
Visit the page https://seatunnel.apache.org
Located in src/pages/home
├── home
├── index.jsx
├── index.less
└── languages.json
Visit the page https://seatunnel.apache.org/team
Located in src/pages/team
├── team
├── index.js
├── index.less
├── languages.json
└── github-avatars.json
Team member avatars are stored as Base64 encoded strings, independent of external GitHub resources. When adding new members or updating avatars:
- Modify
languages.json, add new member info topmcorcommitterarray:
{
"apacheId": "newmember",
"githubId": "newmember",
"name": "New Member",
"userId": "12345678"
}- Run the avatar fetch script:
node tools/fetch-team-avatars.jsThe script will:
- Download all member avatars from GitHub
- Convert to Base64 and save to
github-avatars.json - Update
userIdfield inlanguages.json
Visit the page https://seatunnel.apache.org/user
Located in src/pages/user
├── user
├── data.json
├── images.json
├── index.js
├── index.less
└── languages.json
Visit the page https://seatunnel.apache.org/versions
Located in src/pages/versions
└── versions
├── config.json
├── index.js
└── index.less
- 1、Run
npm run version replace_by_target_versionlocally to copy a document. - 2、Modify
/src/pages/download/st_data.jsonfor the latest download link address.