blob: 08aa4e0e125652816ca84bf0c07e2ed0085a4b36 [file] [log] [blame] [view]
# Apache SeaTunnel Website
[![License](https://img.shields.io/badge/license-Apache%202-4EB1BA.svg)](https://www.apache.org/licenses/LICENSE-2.0.html)
[English](README.md) | [中文](README_ZH.md)
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.
## Branch
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
```
## 1. Preview and generate static files
This website is compiled using node, using Docusaurus framework components
1. Download and install nodejs (version>14)
2. Clone the code to the local `git clone git@github.com:apache/incubator-seatunnel-website.git`
3. Run `./tools/build-docs.sh` to fetch and prepare docs form **apache/incubator-seatunnel**, for more information you could see [how our document work](HOW_DOC_WORK.md)
4. Run `npm install` to install the required dependent libraries.
5. Run `npm run start` in the root directory, you can visit http://localhost:3000 to view the English mode preview of the site
6. Run `npm run start-zh` in the root directory, you can visit http://localhost:3000 to view the Chinese mode preview of the site
7. To generate static website resource files, run `npm run build`. The static resources of the build are in the build directory.
## 2. Directory structure
```
├── LICENSE
├── Logo.png
├── README.md
├── README_ZH.md
├── babel.config.js
├── blog
├── user_cases
├── 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
```
## 3. Specification
### 3.1 Directory naming convention
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`
### 3.2 javascript and the naming convention of static resource files
All lowercase, separated by a dash
Positive example: `render-dom.js / signup.css / index.html / company-logo.png`
Counter example: `renderDom.js / UserManagement.html`
### 3.3 Resource Path
Image resources are unified under `static/{module name}`
css and other style files are placed in the `src/css` directory
### 3.4 Page content modification
> 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
### 3.5 Home page modification
Visit the page https://seatunnel.apache.org
Located in `src/pages/home`
```
├── home
├── index.jsx
├── index.less
└── languages.json
```
### 3.6 Team page modification
Visit the page https://seatunnel.apache.org/team
Located in `src/pages/team`
```
├── team
├── index.js
├── index.less
└── languages.json
```
### 3.7 User list page modification
Visit the page https://seatunnel.apache.org/user
Located in `src/pages/user`
```
├── user
├── data.json
├── images.json
├── index.js
├── index.less
└── languages.json
```
### 3.8 version List page modification
Visit the page https://seatunnel.apache.org/versions
Located in `src/pages/versions`
```
└── versions
├── config.json
├── index.js
└── index.less
```
### 3.9 add a new version for documents
- 1Run `npm run docusaurus docs:version replace_by_target_version` locally to copy a document.
- 2Modify `/src/pages/version/config.json` for the latest and history versions.