Host your Docusaurus site at your own address

A Docusaurus build is a folder of static HTML. Drop it in, pick an address, and your documentation is live over HTTPS in seconds.

You can host:
index.html/assetsfolder.zip

Free to use, live at your-name.99helpers.site in about ten seconds.

Why the docs are still on someone's laptop

Docusaurus produces a genuinely static site: every doc, blog post and versioned page is rendered to HTML at build time, with React taking over in the browser. That means it can be served from anywhere, which is handy when the project's GitHub Pages deployment isn't yours to configure.

What a Docusaurus build gives you

  • A build folder with every doc and blog page rendered to HTML
  • Versioned documentation as its own set of paths
  • Bundled CSS and JavaScript under assets/
  • A 404.html, generated by Docusaurus

Build it, then upload it

Build command
npm run build
Folder to upload
build/
Check baseUrl in docusaurus.config.js
Set baseUrl to '/' — the GitHub Pages project value, '/my-repo/', would prefix every link and asset in the build.

baseUrl is the classic mistake

Building with '/my-repo/' and publishing at a root address gives you a page with no styles and every link one folder too deep.

The deploy belongs to the repo

Docusaurus's deploy command targets GitHub Pages. For a fork, a client's docs or a preview build, that isn't where it should go.

Review builds need a URL

Sending a reviewer a branch and a build command is not sending them the documentation.

Publishing a Docusaurus site

  1. 1

    Set baseUrl to the root

    In docusaurus.config.js, set baseUrl: '/'. Your site gets its own address here, so nothing has to be nested under a project path.

  2. 2

    Run the build

    npm run build writes the whole site into build, including versioned docs, the blog and the search index if you use a local search plugin.

  3. 3

    Upload build and share

    Drag the build folder in, choose a name, and the docs are live over HTTPS in seconds. Republish to the same address on every update.

Worth knowing

  • Docusaurus writes folder URLs by default, so /docs/intro/ works, and /docs/intro redirects to it.
  • The generated 404.html is used automatically for pages that don't exist.
  • Algolia DocSearch runs from the browser, so it works on static hosting; local search plugins build their index into the folder and work too.
  • Versioned docs are just more folders in the build, so they publish with everything else.
  • A large versioned docs site produces a lot of files — the limit is 500 files and 100 MB per site, so prune old versions if you're close.

Questions

What should baseUrl be?
'/'. Every site here is served from the root of its own address, so a project sub-path would break asset and link URLs.
Which folder do I upload?
build, or a zip of its contents, with index.html at the top level.
Does search work?
Yes. Algolia DocSearch queries an external service from the browser, and offline search plugins build their index into the site, so both work without a server.
Can I publish a preview for review?
Yes — publish it to a second address, and password-protect it if the content isn't public yet.
Can CI publish it for me?
Yes. Use the REST API with a token to publish the build folder from your pipeline after each merge.

Publish the Docusaurus build you already have

Drop the folder in at the top of this page and see the link for yourself. You only make an account once it's ready to go live.

Every site gets its own address on 99helpers.site — see static site hosting for every generator, how website hosting works here or free file hosting for any file type.