Skip to content

Latest commit

 

History

History

README.md

@nx-extend/docusaurus

@nx-extend/docusaurus NPM package

Nx plugin for working with Docusaurus.

Features

  • Generate Docusaurus applications in your Nx workspace
  • Development server with hot reload
  • Production builds with optimization
  • Bundle analyzer support
  • Full Nx integration with caching and dependencies

Attribution

This was originally built by nx-plus.

Setup

Install

npm install -D @nx-extend/docusaurus

Usage

Generate Application

Generate a new Docusaurus application:

nx g @nx-extend/docusaurus:app my-app

Available Options

Name Type Default Description
name string - The name of your app
tags string - Tags to use for linting (comma-delimited)
directory string apps A directory where the project is placed
skipFormat boolean false Skip formatting files

Serve

Start the development server:

nx serve my-app

Available Options

Name Type Default Description
port number 3000 Use specified port
host string localhost Use specified host
hotOnly boolean false Do not fallback to page refresh if hot reload fails
open boolean false Open page in the browser

Build

Build your application for production:

nx build my-app

Available Options

Name Type Default Description
bundleAnalyzer boolean false Visualize size of webpack output files with an interactive zoomable treemap
outputPath string - The full path for the new output directory, relative to the current workspace
minify boolean true Build website minimizing JS bundles

Troubleshooting

If you encounter this error while building a Docusaurus app, then you may need to add a terser resolution to your package.json. Note: this only works with Yarn and not npm.

Error:

Docusaurus user: you probably have this known error due to using a monorepo/workspace.
We have a workaround for you, check https://github.com/facebook/docusaurus/issues/3515

Solution (package.json):

{
  "resolutions": {
    "terser": "^4.0.0"
  }
}

Once this has been updated, run yarn install and then build your Docusaurus application.