tree: f248b3272eb08a1a5929a359e15f9b3be2e41192 [path history] [tgz]
  1. blog/
  2. community/
  3. docs/
  4. releases/
  5. src/
  6. static/
  7. .gitignore
  8. babel.config.js
  9. docusaurus.config.js
  10. package-lock.json
  11. package.json
  12. README.md
  13. sidebars.js
website/README.md

Apache XTable™ (Incubating) Website Source Code

This repo hosts the source code of Apache XTable™ (Incubating)

Prerequisite

Install npm for the first time.

Installation

cd website
npm install

Local Development

cd website
npm start

This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.

Build

cd website
npm run build

This command generates static content into the build directory and can be served using any static contents hosting service.

Testing your Build Locally

It is important to test your build locally before deploying to production.

cd website
npm run serve

[!NOTE]
If you make changes to the contents inside docs directory, you can verify the changes locally by visiting https://localhost:3000/docs/setup after running npm run serve.

Creating new pages with navbar access

  1. Create a new folder i.e. releases inside the website directory
  2. Create a new file i.e. downloads.mdx inside the releases directory
  3. Add necessary content to the markdown file
  4. Include the reference to the new folder in the docusaurus.config.js file as follows:
  • Add the new folder to the plugins array under config key, like
      [
        '@docusaurus/plugin-content-docs',
        {
          id: 'releases',
          path: 'releases',
          routeBasePath: 'releases',
        },
      ]
  • Add the new folder to the items array under navbar key, like
      {to: 'releases/downloads', label: 'Downloads', position: 'left'}

Docs

Creating new docs

  1. Place the new file into the docs folder.
  2. Include the reference for the new file into the sidebars.js file.

Blogs

Adding new external blogs (redirection)

  1. Create a .mdx file similar to website/blog/onetable-now-oss.mdx
  2. Add relevant thumbnail image to website/static/images/<folder-name> folder
  3. Make sure to add the appropriate redirection link in the .mdx file

For thumbnail images, we recommend using 1200x600px and .png format.

Adding inline blogs

  1. Create a .md file with all the content inline following Markdown syntax
  2. Place relevant images in the website/static/images/<folder-name> folder and refer to it in the blog

[!NOTE]
You may see broken thumbnails for the blogs during npm start or npm serve because the images needs to be rendered from the main repo. This can only be tested after being merged to the main branch.

Releases

Adding new release

  1. Create a .mdx file similar to website/releases/release-0.2.0-incubating.mdx
  2. Update the downloads file to include the new release similar to the existing releases

Changes to the website homepage

  1. The homepage is a .html file located at website/static/index.html
  2. If you're making changes to the page, test it locally using python 3 -m http.server and visiting http://localhost:8000/ before pushing the changes.

Add community sync page

  1. Create a .md file with all the content for Community page.
  2. Add community page to website homepage.

Add how-to-use docs for catalog sync.

  1. Create a .md file with all the content for how-to-use catalog sync feature.
  2. Add how-to-use catalog sync to website.

Maintainers

Apache XTable™ (Incubating) Community