Skip to content

Docusaurus2 conversion#394

Merged
vogievetsky merged 86 commits intoapache:masterfrom
317brian:docusaurus2-conversion
Jul 24, 2023
Merged

Docusaurus2 conversion#394
vogievetsky merged 86 commits intoapache:masterfrom
317brian:docusaurus2-conversion

Conversation

@317brian
Copy link
Copy Markdown
Contributor

@317brian 317brian commented Jun 13, 2023

This PR updates druid-website-src to Docusaurus 2 and removes Jekyll as part of the build process. It's been styled to look as much as the current site as I'm capable of with help from @ektravel.

When this PR and the publishing process PR are merged (this one first), the repo can republish the 26.0.0 version of the site.

Build preview: https://deploy-preview-1--frabjous-kulfi-9f6ae5.netlify.app/

Changed

  • The site config is now calleddocusaurus.config.js.
  • To run the site locally, users need to do npm|yarn install and then yarn|npm run start in the root of the repo. The root of this repo is equivalent to the how we used the website directory in Docusaurus 1.
  • The location of the source data for the widgets on the home page and the versions on the Download page are now in static/js to follow the Docusaurus convention.
  • Updating the widgets still requires rebuilding the site and at least republishing the homepage.
  • The homepage is now a react page.
  • The location of the website pages like Community and Download is now src/pages/ to follow Docusaurus convention.
  • The publishing process is a WIP described in this PR: Proposed publishing process for Docusaurus 2 #392 . All the processing for publishing, such as writing redirects, has been moved to this repo. apache/druid now solely functions as the source of truth for its corresponding files.
  • These are the files that the publishing script copies to druid-website-src:
    • The docs folder from apache/druid, the Markdown and images for the docs
    • website/sidebars.json
    • website/redirects.json
      Note that the site config does not get copied. This repo's site config is the source of truth.
  • When you run the script to build the docs for publishing, it interpolates the {{DRUIDVERSION}} variable in the Markdown files to insert the Druid version.
  • This repo builds the full site from source files, including the Druid docs for specified versions instead of the site being partially built in apache/druid.
  • To keep this repo buildable, the config defaults to building latest. See the publishing PR #392 for details .

Stayed the same:

  • This repo is still the source of truth for the static website pages like “Downloads” and the styling
  • This repo still builds the final site and the output still needs to be pushed to apache/druid-website.
  • The site has feature parity with the existing site, specifically the homepage and the Downloads page

Needs to be done

  • Verify the Algolia configuration works. I don’t have the ability to do that. Alternatively, we can remove the external dependency on Algolia and switch to Lunr (mini Apache Solr) for the search.
  • Republish the 26.0.0 version of the site to staging and then prod to test the process end-to-end
  • Delete any lingering Jekyll related files

Thanks @ektravel, @writer-jill, @demo-kratia, @techdocsmith, and @vtlim for helping get this together and testing .

317brian and others added 5 commits June 15, 2023 09:44
@317brian
Copy link
Copy Markdown
Contributor Author

Things that can be done outside of this PR is to cleanup some more of the remaining Jekyll files. They're not hurting anything if we don't get to it in this PR.

@vogievetsky vogievetsky merged commit d03cd2f into apache:master Jul 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants