chore: v3.0.0-beta.0 release (#9311)

This commit is contained in:
Sébastien Lorber 2023-09-15 19:44:35 +02:00 committed by GitHub
parent 6e8e276e40
commit 52d79c4e0c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
137 changed files with 382 additions and 309 deletions

View file

@ -1,6 +1,6 @@
{
"name": "new.docusaurus.io",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"private": true,
"scripts": {
"start": "npx --package netlify-cli netlify dev"

View file

@ -1,6 +1,6 @@
{
"name": "argos",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Argos visual diff tests",
"license": "MIT",
"private": true,

View file

@ -1,5 +1,5 @@
{
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"npmClient": "yarn",
"useWorkspaces": true,
"useNx": false,

View file

@ -1,6 +1,6 @@
{
"name": "create-docusaurus",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Create Docusaurus apps easily.",
"type": "module",
"repository": {
@ -22,8 +22,8 @@
},
"license": "MIT",
"dependencies": {
"@docusaurus/logger": "3.0.0-alpha.0",
"@docusaurus/utils": "3.0.0-alpha.0",
"@docusaurus/logger": "3.0.0-beta.0",
"@docusaurus/utils": "3.0.0-beta.0",
"commander": "^5.1.0",
"fs-extra": "^11.1.1",
"lodash": "^4.17.21",

View file

@ -1,6 +1,6 @@
{
"name": "docusaurus-2-classic-typescript-template",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"private": true,
"scripts": {
"docusaurus": "docusaurus",
@ -15,8 +15,8 @@
"typecheck": "tsc"
},
"dependencies": {
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/preset-classic": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/preset-classic": "3.0.0-beta.0",
"@mdx-js/react": "^2.3.0",
"clsx": "^1.2.1",
"prism-react-renderer": "^1.3.5",
@ -24,8 +24,8 @@
"react-dom": "^18.0.0"
},
"devDependencies": {
"@docusaurus/module-type-aliases": "3.0.0-alpha.0",
"@docusaurus/tsconfig": "3.0.0-alpha.0",
"@docusaurus/module-type-aliases": "3.0.0-beta.0",
"@docusaurus/tsconfig": "3.0.0-beta.0",
"typescript": "~5.2.2"
},
"browserslist": {

View file

@ -1,6 +1,6 @@
{
"name": "docusaurus-2-classic-template",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"private": true,
"scripts": {
"docusaurus": "docusaurus",
@ -14,8 +14,8 @@
"write-heading-ids": "docusaurus write-heading-ids"
},
"dependencies": {
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/preset-classic": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/preset-classic": "3.0.0-beta.0",
"@mdx-js/react": "^2.3.0",
"clsx": "^1.2.1",
"prism-react-renderer": "^1.3.5",
@ -23,7 +23,7 @@
"react-dom": "^18.0.0"
},
"devDependencies": {
"@docusaurus/module-type-aliases": "3.0.0-alpha.0"
"@docusaurus/module-type-aliases": "3.0.0-beta.0"
},
"browserslist": {
"production": [

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/cssnano-preset",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Advanced cssnano preset for maximum optimization.",
"main": "lib/index.js",
"license": "MIT",

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/logger",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "An encapsulated logger for semantically formatting console messages.",
"main": "./lib/index.js",
"repository": {

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/mdx-loader",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Docusaurus Loader for MDX",
"main": "lib/index.js",
"types": "lib/index.d.ts",
@ -20,9 +20,9 @@
"dependencies": {
"@babel/parser": "^7.22.7",
"@babel/traverse": "^7.22.8",
"@docusaurus/logger": "3.0.0-alpha.0",
"@docusaurus/utils": "3.0.0-alpha.0",
"@docusaurus/utils-validation": "3.0.0-alpha.0",
"@docusaurus/logger": "3.0.0-beta.0",
"@docusaurus/utils": "3.0.0-beta.0",
"@docusaurus/utils-validation": "3.0.0-beta.0",
"@mdx-js/mdx": "^2.1.5",
"@slorber/remark-comment": "^1.0.0",
"escape-html": "^1.0.3",
@ -45,7 +45,7 @@
"webpack": "^5.88.1"
},
"devDependencies": {
"@docusaurus/types": "3.0.0-alpha.0",
"@docusaurus/types": "3.0.0-beta.0",
"@types/escape-html": "^1.0.2",
"@types/mdast": "^3.0.12",
"@types/stringify-object": "^3.3.1",

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/migrate",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "A CLI tool to migrate from older versions of Docusaurus.",
"license": "MIT",
"engines": {
@ -24,8 +24,8 @@
"dependencies": {
"@babel/core": "^7.22.9",
"@babel/preset-env": "^7.22.9",
"@docusaurus/logger": "3.0.0-alpha.0",
"@docusaurus/utils": "3.0.0-alpha.0",
"@docusaurus/logger": "3.0.0-beta.0",
"@docusaurus/utils": "3.0.0-beta.0",
"@mapbox/hast-util-to-jsx": "^2.0.0",
"color": "^4.2.3",
"commander": "^5.1.0",

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/module-type-aliases",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Docusaurus module type aliases.",
"types": "./src/index.d.ts",
"publishConfig": {
@ -13,7 +13,7 @@
},
"dependencies": {
"@docusaurus/react-loadable": "5.5.2",
"@docusaurus/types": "3.0.0-alpha.0",
"@docusaurus/types": "3.0.0-beta.0",
"@types/history": "^4.7.11",
"@types/react": "*",
"@types/react-router-config": "*",

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/plugin-client-redirects",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Client redirects plugin for Docusaurus.",
"main": "lib/index.js",
"types": "lib/index.d.ts",
@ -18,18 +18,18 @@
},
"license": "MIT",
"dependencies": {
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/logger": "3.0.0-alpha.0",
"@docusaurus/utils": "3.0.0-alpha.0",
"@docusaurus/utils-common": "3.0.0-alpha.0",
"@docusaurus/utils-validation": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/logger": "3.0.0-beta.0",
"@docusaurus/utils": "3.0.0-beta.0",
"@docusaurus/utils-common": "3.0.0-beta.0",
"@docusaurus/utils-validation": "3.0.0-beta.0",
"eta": "^2.2.0",
"fs-extra": "^11.1.1",
"lodash": "^4.17.21",
"tslib": "^2.6.0"
},
"devDependencies": {
"@docusaurus/types": "3.0.0-alpha.0"
"@docusaurus/types": "3.0.0-beta.0"
},
"peerDependencies": {
"react": "^18.0.0",

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/plugin-content-blog",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Blog plugin for Docusaurus.",
"main": "lib/index.js",
"types": "src/plugin-content-blog.d.ts",
@ -19,13 +19,13 @@
},
"license": "MIT",
"dependencies": {
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/logger": "3.0.0-alpha.0",
"@docusaurus/mdx-loader": "3.0.0-alpha.0",
"@docusaurus/types": "3.0.0-alpha.0",
"@docusaurus/utils": "3.0.0-alpha.0",
"@docusaurus/utils-common": "3.0.0-alpha.0",
"@docusaurus/utils-validation": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/logger": "3.0.0-beta.0",
"@docusaurus/mdx-loader": "3.0.0-beta.0",
"@docusaurus/types": "3.0.0-beta.0",
"@docusaurus/utils": "3.0.0-beta.0",
"@docusaurus/utils-common": "3.0.0-beta.0",
"@docusaurus/utils-validation": "3.0.0-beta.0",
"cheerio": "^1.0.0-rc.12",
"feed": "^4.2.2",
"fs-extra": "^11.1.1",

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/plugin-content-docs",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Docs plugin for Docusaurus.",
"main": "lib/index.js",
"sideEffects": false,
@ -35,13 +35,13 @@
},
"license": "MIT",
"dependencies": {
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/logger": "3.0.0-alpha.0",
"@docusaurus/mdx-loader": "3.0.0-alpha.0",
"@docusaurus/module-type-aliases": "3.0.0-alpha.0",
"@docusaurus/types": "3.0.0-alpha.0",
"@docusaurus/utils": "3.0.0-alpha.0",
"@docusaurus/utils-validation": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/logger": "3.0.0-beta.0",
"@docusaurus/mdx-loader": "3.0.0-beta.0",
"@docusaurus/module-type-aliases": "3.0.0-beta.0",
"@docusaurus/types": "3.0.0-beta.0",
"@docusaurus/utils": "3.0.0-beta.0",
"@docusaurus/utils-validation": "3.0.0-beta.0",
"@types/react-router-config": "^5.0.7",
"combine-promises": "^1.1.0",
"fs-extra": "^11.1.1",

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/plugin-content-pages",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Pages plugin for Docusaurus.",
"main": "lib/index.js",
"types": "src/plugin-content-pages.d.ts",
@ -18,11 +18,11 @@
},
"license": "MIT",
"dependencies": {
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/mdx-loader": "3.0.0-alpha.0",
"@docusaurus/types": "3.0.0-alpha.0",
"@docusaurus/utils": "3.0.0-alpha.0",
"@docusaurus/utils-validation": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/mdx-loader": "3.0.0-beta.0",
"@docusaurus/types": "3.0.0-beta.0",
"@docusaurus/utils": "3.0.0-beta.0",
"@docusaurus/utils-validation": "3.0.0-beta.0",
"fs-extra": "^11.1.1",
"tslib": "^2.6.0",
"webpack": "^5.88.1"

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/plugin-debug",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Debug plugin for Docusaurus.",
"main": "lib/index.js",
"types": "src/plugin-debug.d.ts",
@ -20,9 +20,9 @@
},
"license": "MIT",
"dependencies": {
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/types": "3.0.0-alpha.0",
"@docusaurus/utils": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/types": "3.0.0-beta.0",
"@docusaurus/utils": "3.0.0-beta.0",
"@microlink/react-json-view": "^1.22.2",
"fs-extra": "^11.1.1",
"tslib": "^2.6.0"

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/plugin-google-analytics",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Global analytics (analytics.js) plugin for Docusaurus.",
"main": "lib/index.js",
"types": "lib/index.d.ts",
@ -18,9 +18,9 @@
},
"license": "MIT",
"dependencies": {
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/types": "3.0.0-alpha.0",
"@docusaurus/utils-validation": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/types": "3.0.0-beta.0",
"@docusaurus/utils-validation": "3.0.0-beta.0",
"tslib": "^2.6.0"
},
"peerDependencies": {

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/plugin-google-gtag",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Global Site Tag (gtag.js) plugin for Docusaurus.",
"main": "lib/index.js",
"types": "lib/index.d.ts",
@ -18,9 +18,9 @@
},
"license": "MIT",
"dependencies": {
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/types": "3.0.0-alpha.0",
"@docusaurus/utils-validation": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/types": "3.0.0-beta.0",
"@docusaurus/utils-validation": "3.0.0-beta.0",
"@types/gtag.js": "^0.0.12",
"tslib": "^2.6.0"
},

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/plugin-google-tag-manager",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Google Tag Manager (gtm.js) plugin for Docusaurus.",
"main": "lib/index.js",
"types": "lib/index.d.ts",
@ -18,9 +18,9 @@
},
"license": "MIT",
"dependencies": {
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/types": "3.0.0-alpha.0",
"@docusaurus/utils-validation": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/types": "3.0.0-beta.0",
"@docusaurus/utils-validation": "3.0.0-beta.0",
"tslib": "^2.6.0"
},
"peerDependencies": {

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/plugin-ideal-image",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Docusaurus Plugin to generate an almost ideal image (responsive, lazy-loading, and low quality placeholder).",
"main": "lib/index.js",
"types": "src/plugin-ideal-image.d.ts",
@ -20,12 +20,12 @@
},
"license": "MIT",
"dependencies": {
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/lqip-loader": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/lqip-loader": "3.0.0-beta.0",
"@docusaurus/responsive-loader": "^1.7.0",
"@docusaurus/theme-translations": "3.0.0-alpha.0",
"@docusaurus/types": "3.0.0-alpha.0",
"@docusaurus/utils-validation": "3.0.0-alpha.0",
"@docusaurus/theme-translations": "3.0.0-beta.0",
"@docusaurus/types": "3.0.0-beta.0",
"@docusaurus/utils-validation": "3.0.0-beta.0",
"@slorber/react-ideal-image": "^0.0.12",
"react-waypoint": "^10.3.0",
"sharp": "^0.32.3",
@ -33,7 +33,7 @@
"webpack": "^5.88.1"
},
"devDependencies": {
"@docusaurus/module-type-aliases": "3.0.0-alpha.0",
"@docusaurus/module-type-aliases": "3.0.0-beta.0",
"fs-extra": "^11.1.0"
},
"peerDependencies": {

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/plugin-pwa",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Docusaurus Plugin to add PWA support.",
"main": "lib/index.js",
"types": "src/plugin-pwa.d.ts",
@ -22,12 +22,12 @@
"dependencies": {
"@babel/core": "^7.22.9",
"@babel/preset-env": "^7.22.9",
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/theme-common": "3.0.0-alpha.0",
"@docusaurus/theme-translations": "3.0.0-alpha.0",
"@docusaurus/types": "3.0.0-alpha.0",
"@docusaurus/utils": "3.0.0-alpha.0",
"@docusaurus/utils-validation": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/theme-common": "3.0.0-beta.0",
"@docusaurus/theme-translations": "3.0.0-beta.0",
"@docusaurus/types": "3.0.0-beta.0",
"@docusaurus/utils": "3.0.0-beta.0",
"@docusaurus/utils-validation": "3.0.0-beta.0",
"babel-loader": "^9.1.3",
"clsx": "^1.2.1",
"core-js": "^3.31.1",
@ -41,7 +41,7 @@
"workbox-window": "^6.6.1"
},
"devDependencies": {
"@docusaurus/module-type-aliases": "3.0.0-alpha.0",
"@docusaurus/module-type-aliases": "3.0.0-beta.0",
"fs-extra": "^11.1.0"
},
"peerDependencies": {

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/plugin-sitemap",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Simple sitemap generation plugin for Docusaurus.",
"main": "lib/index.js",
"types": "lib/index.d.ts",
@ -18,12 +18,12 @@
},
"license": "MIT",
"dependencies": {
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/logger": "3.0.0-alpha.0",
"@docusaurus/types": "3.0.0-alpha.0",
"@docusaurus/utils": "3.0.0-alpha.0",
"@docusaurus/utils-common": "3.0.0-alpha.0",
"@docusaurus/utils-validation": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/logger": "3.0.0-beta.0",
"@docusaurus/types": "3.0.0-beta.0",
"@docusaurus/utils": "3.0.0-beta.0",
"@docusaurus/utils-common": "3.0.0-beta.0",
"@docusaurus/utils-validation": "3.0.0-beta.0",
"fs-extra": "^11.1.1",
"sitemap": "^7.1.1",
"tslib": "^2.6.0"

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/preset-classic",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Classic preset for Docusaurus.",
"main": "lib/index.js",
"types": "lib/index.d.ts",
@ -18,19 +18,19 @@
},
"license": "MIT",
"dependencies": {
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/plugin-content-blog": "3.0.0-alpha.0",
"@docusaurus/plugin-content-docs": "3.0.0-alpha.0",
"@docusaurus/plugin-content-pages": "3.0.0-alpha.0",
"@docusaurus/plugin-debug": "3.0.0-alpha.0",
"@docusaurus/plugin-google-analytics": "3.0.0-alpha.0",
"@docusaurus/plugin-google-gtag": "3.0.0-alpha.0",
"@docusaurus/plugin-google-tag-manager": "3.0.0-alpha.0",
"@docusaurus/plugin-sitemap": "3.0.0-alpha.0",
"@docusaurus/theme-classic": "3.0.0-alpha.0",
"@docusaurus/theme-common": "3.0.0-alpha.0",
"@docusaurus/theme-search-algolia": "3.0.0-alpha.0",
"@docusaurus/types": "3.0.0-alpha.0"
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/plugin-content-blog": "3.0.0-beta.0",
"@docusaurus/plugin-content-docs": "3.0.0-beta.0",
"@docusaurus/plugin-content-pages": "3.0.0-beta.0",
"@docusaurus/plugin-debug": "3.0.0-beta.0",
"@docusaurus/plugin-google-analytics": "3.0.0-beta.0",
"@docusaurus/plugin-google-gtag": "3.0.0-beta.0",
"@docusaurus/plugin-google-tag-manager": "3.0.0-beta.0",
"@docusaurus/plugin-sitemap": "3.0.0-beta.0",
"@docusaurus/theme-classic": "3.0.0-beta.0",
"@docusaurus/theme-common": "3.0.0-beta.0",
"@docusaurus/theme-search-algolia": "3.0.0-beta.0",
"@docusaurus/types": "3.0.0-beta.0"
},
"peerDependencies": {
"react": "^18.0.0",

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/remark-plugin-npm2yarn",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Remark plugin for converting npm commands to Yarn commands as tabs.",
"main": "lib/index.js",
"publishConfig": {

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/theme-classic",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Classic theme for Docusaurus",
"main": "lib/index.js",
"types": "src/theme-classic.d.ts",
@ -20,18 +20,18 @@
"copy:watch": "node ../../admin/scripts/copyUntypedFiles.js --watch"
},
"dependencies": {
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/mdx-loader": "3.0.0-alpha.0",
"@docusaurus/module-type-aliases": "3.0.0-alpha.0",
"@docusaurus/plugin-content-blog": "3.0.0-alpha.0",
"@docusaurus/plugin-content-docs": "3.0.0-alpha.0",
"@docusaurus/plugin-content-pages": "3.0.0-alpha.0",
"@docusaurus/theme-common": "3.0.0-alpha.0",
"@docusaurus/theme-translations": "3.0.0-alpha.0",
"@docusaurus/types": "3.0.0-alpha.0",
"@docusaurus/utils": "3.0.0-alpha.0",
"@docusaurus/utils-common": "3.0.0-alpha.0",
"@docusaurus/utils-validation": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/mdx-loader": "3.0.0-beta.0",
"@docusaurus/module-type-aliases": "3.0.0-beta.0",
"@docusaurus/plugin-content-blog": "3.0.0-beta.0",
"@docusaurus/plugin-content-docs": "3.0.0-beta.0",
"@docusaurus/plugin-content-pages": "3.0.0-beta.0",
"@docusaurus/theme-common": "3.0.0-beta.0",
"@docusaurus/theme-translations": "3.0.0-beta.0",
"@docusaurus/types": "3.0.0-beta.0",
"@docusaurus/utils": "3.0.0-beta.0",
"@docusaurus/utils-common": "3.0.0-beta.0",
"@docusaurus/utils-validation": "3.0.0-beta.0",
"@mdx-js/react": "^2.1.5",
"clsx": "^1.2.1",
"copy-text-to-clipboard": "^3.2.0",

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/theme-common",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Common code for Docusaurus themes.",
"main": "./lib/index.js",
"types": "./lib/index.d.ts",
@ -30,13 +30,13 @@
},
"license": "MIT",
"dependencies": {
"@docusaurus/mdx-loader": "3.0.0-alpha.0",
"@docusaurus/module-type-aliases": "3.0.0-alpha.0",
"@docusaurus/plugin-content-blog": "3.0.0-alpha.0",
"@docusaurus/plugin-content-docs": "3.0.0-alpha.0",
"@docusaurus/plugin-content-pages": "3.0.0-alpha.0",
"@docusaurus/utils": "3.0.0-alpha.0",
"@docusaurus/utils-common": "3.0.0-alpha.0",
"@docusaurus/mdx-loader": "3.0.0-beta.0",
"@docusaurus/module-type-aliases": "3.0.0-beta.0",
"@docusaurus/plugin-content-blog": "3.0.0-beta.0",
"@docusaurus/plugin-content-docs": "3.0.0-beta.0",
"@docusaurus/plugin-content-pages": "3.0.0-beta.0",
"@docusaurus/utils": "3.0.0-beta.0",
"@docusaurus/utils-common": "3.0.0-beta.0",
"@types/history": "^4.7.11",
"@types/react": "*",
"@types/react-router-config": "*",
@ -47,8 +47,8 @@
"utility-types": "^3.10.0"
},
"devDependencies": {
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/types": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/types": "3.0.0-beta.0",
"fs-extra": "^11.1.1",
"lodash": "^4.17.21"
},

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/theme-live-codeblock",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Docusaurus live code block component.",
"main": "lib/index.js",
"types": "src/theme-live-codeblock.d.ts",
@ -23,10 +23,10 @@
},
"license": "MIT",
"dependencies": {
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/theme-common": "3.0.0-alpha.0",
"@docusaurus/theme-translations": "3.0.0-alpha.0",
"@docusaurus/utils-validation": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/theme-common": "3.0.0-beta.0",
"@docusaurus/theme-translations": "3.0.0-beta.0",
"@docusaurus/utils-validation": "3.0.0-beta.0",
"@philpl/buble": "^0.19.7",
"clsx": "^1.2.1",
"fs-extra": "^11.1.1",
@ -34,7 +34,7 @@
"tslib": "^2.6.0"
},
"devDependencies": {
"@docusaurus/types": "3.0.0-alpha.0",
"@docusaurus/types": "3.0.0-beta.0",
"@types/buble": "^0.20.1"
},
"peerDependencies": {

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/theme-mermaid",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Mermaid components for Docusaurus.",
"main": "lib/index.js",
"types": "src/theme-mermaid.d.ts",
@ -33,11 +33,11 @@
"copy:watch": "node ../../admin/scripts/copyUntypedFiles.js --watch"
},
"dependencies": {
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/module-type-aliases": "3.0.0-alpha.0",
"@docusaurus/theme-common": "3.0.0-alpha.0",
"@docusaurus/types": "3.0.0-alpha.0",
"@docusaurus/utils-validation": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/module-type-aliases": "3.0.0-beta.0",
"@docusaurus/theme-common": "3.0.0-beta.0",
"@docusaurus/types": "3.0.0-beta.0",
"@docusaurus/utils-validation": "3.0.0-beta.0",
"mermaid": "^10.4.0",
"tslib": "^2.6.0"
},

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/theme-search-algolia",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Algolia search component for Docusaurus.",
"main": "lib/index.js",
"sideEffects": [
@ -34,13 +34,13 @@
},
"dependencies": {
"@docsearch/react": "~3.3.3",
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/logger": "3.0.0-alpha.0",
"@docusaurus/plugin-content-docs": "3.0.0-alpha.0",
"@docusaurus/theme-common": "3.0.0-alpha.0",
"@docusaurus/theme-translations": "3.0.0-alpha.0",
"@docusaurus/utils": "3.0.0-alpha.0",
"@docusaurus/utils-validation": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/logger": "3.0.0-beta.0",
"@docusaurus/plugin-content-docs": "3.0.0-beta.0",
"@docusaurus/theme-common": "3.0.0-beta.0",
"@docusaurus/theme-translations": "3.0.0-beta.0",
"@docusaurus/utils": "3.0.0-beta.0",
"@docusaurus/utils-validation": "3.0.0-beta.0",
"algoliasearch": "^4.18.0",
"algoliasearch-helper": "^3.13.3",
"clsx": "^1.2.1",
@ -51,7 +51,7 @@
"utility-types": "^3.10.0"
},
"devDependencies": {
"@docusaurus/module-type-aliases": "3.0.0-alpha.0"
"@docusaurus/module-type-aliases": "3.0.0-beta.0"
},
"peerDependencies": {
"react": "^18.0.0",

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/theme-translations",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Docusaurus theme translations.",
"main": "lib/index.js",
"types": "lib/index.d.ts",
@ -23,8 +23,8 @@
"tslib": "^2.6.0"
},
"devDependencies": {
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/logger": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/logger": "3.0.0-beta.0",
"lodash": "^4.17.21"
},
"engines": {

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/tsconfig",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Docusaurus base TypeScript configuration.",
"main": "tsconfig.json",
"publishConfig": {

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/types",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Common types for Docusaurus packages.",
"types": "./src/index.d.ts",
"publishConfig": {

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/utils-common",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Common (Node/Browser) utility functions for Docusaurus packages.",
"main": "./lib/index.js",
"types": "./lib/index.d.ts",

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/utils-validation",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Node validation utility functions for Docusaurus packages.",
"main": "./lib/index.js",
"types": "./lib/index.d.ts",
@ -18,8 +18,8 @@
},
"license": "MIT",
"dependencies": {
"@docusaurus/logger": "3.0.0-alpha.0",
"@docusaurus/utils": "3.0.0-alpha.0",
"@docusaurus/logger": "3.0.0-beta.0",
"@docusaurus/utils": "3.0.0-beta.0",
"joi": "^17.9.2",
"js-yaml": "^4.1.0",
"tslib": "^2.6.0"

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/utils",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Node utility functions for Docusaurus packages.",
"main": "./lib/index.js",
"types": "./lib/index.d.ts",
@ -18,7 +18,7 @@
},
"license": "MIT",
"dependencies": {
"@docusaurus/logger": "3.0.0-alpha.0",
"@docusaurus/logger": "3.0.0-beta.0",
"@svgr/webpack": "^6.5.1",
"escape-string-regexp": "^4.0.0",
"file-loader": "^6.2.0",
@ -39,7 +39,7 @@
"node": ">=16.14"
},
"devDependencies": {
"@docusaurus/types": "3.0.0-alpha.0",
"@docusaurus/types": "3.0.0-beta.0",
"@types/dedent": "^0.7.0",
"@types/github-slugger": "^1.3.0",
"@types/micromatch": "^4.0.2",

View file

@ -1,7 +1,7 @@
{
"name": "@docusaurus/core",
"description": "Easy to Maintain Open Source Documentation Websites",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"license": "MIT",
"publishConfig": {
"access": "public"
@ -43,13 +43,13 @@
"@babel/runtime": "^7.22.6",
"@babel/runtime-corejs3": "^7.22.6",
"@babel/traverse": "^7.22.8",
"@docusaurus/cssnano-preset": "3.0.0-alpha.0",
"@docusaurus/logger": "3.0.0-alpha.0",
"@docusaurus/mdx-loader": "3.0.0-alpha.0",
"@docusaurus/cssnano-preset": "3.0.0-beta.0",
"@docusaurus/logger": "3.0.0-beta.0",
"@docusaurus/mdx-loader": "3.0.0-beta.0",
"@docusaurus/react-loadable": "5.5.2",
"@docusaurus/utils": "3.0.0-alpha.0",
"@docusaurus/utils-common": "3.0.0-alpha.0",
"@docusaurus/utils-validation": "3.0.0-alpha.0",
"@docusaurus/utils": "3.0.0-beta.0",
"@docusaurus/utils-common": "3.0.0-beta.0",
"@docusaurus/utils-validation": "3.0.0-beta.0",
"@slorber/static-site-generator-webpack-plugin": "^4.0.7",
"@svgr/webpack": "^6.5.1",
"autoprefixer": "^10.4.14",
@ -106,8 +106,8 @@
"webpackbar": "^5.0.2"
},
"devDependencies": {
"@docusaurus/module-type-aliases": "3.0.0-alpha.0",
"@docusaurus/types": "3.0.0-alpha.0",
"@docusaurus/module-type-aliases": "3.0.0-beta.0",
"@docusaurus/types": "3.0.0-beta.0",
"@types/detect-port": "^1.3.3",
"@types/react-dom": "^18.2.7",
"@types/react-router-config": "^5.0.7",

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/eslint-plugin",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "ESLint plugin to enforce best Docusaurus practices.",
"main": "lib/index.js",
"keywords": [

View file

@ -1,6 +1,6 @@
{
"name": "@docusaurus/lqip-loader",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Low Quality Image Placeholders (LQIP) loader for webpack.",
"main": "lib/index.js",
"publishConfig": {
@ -17,7 +17,7 @@
},
"license": "MIT",
"dependencies": {
"@docusaurus/logger": "3.0.0-alpha.0",
"@docusaurus/logger": "3.0.0-beta.0",
"file-loader": "^6.2.0",
"lodash": "^4.17.21",
"sharp": "^0.32.3",

View file

@ -1,6 +1,6 @@
{
"name": "stylelint-copyright",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"description": "Stylelint plugin to check CSS files for a copyright header.",
"main": "lib/index.js",
"license": "MIT",

View file

@ -1,6 +1,6 @@
{
"name": "website",
"version": "3.0.0-alpha.0",
"version": "3.0.0-beta.0",
"private": true,
"scripts": {
"docusaurus": "docusaurus",
@ -36,19 +36,19 @@
"dependencies": {
"@crowdin/cli": "^3.13.0",
"@crowdin/crowdin-api-client": "^1.23.3",
"@docusaurus/core": "3.0.0-alpha.0",
"@docusaurus/logger": "3.0.0-alpha.0",
"@docusaurus/plugin-client-redirects": "3.0.0-alpha.0",
"@docusaurus/plugin-ideal-image": "3.0.0-alpha.0",
"@docusaurus/plugin-pwa": "3.0.0-alpha.0",
"@docusaurus/preset-classic": "3.0.0-alpha.0",
"@docusaurus/remark-plugin-npm2yarn": "3.0.0-alpha.0",
"@docusaurus/theme-classic": "3.0.0-alpha.0",
"@docusaurus/theme-common": "3.0.0-alpha.0",
"@docusaurus/theme-live-codeblock": "3.0.0-alpha.0",
"@docusaurus/theme-mermaid": "3.0.0-alpha.0",
"@docusaurus/utils": "3.0.0-alpha.0",
"@docusaurus/utils-common": "3.0.0-alpha.0",
"@docusaurus/core": "3.0.0-beta.0",
"@docusaurus/logger": "3.0.0-beta.0",
"@docusaurus/plugin-client-redirects": "3.0.0-beta.0",
"@docusaurus/plugin-ideal-image": "3.0.0-beta.0",
"@docusaurus/plugin-pwa": "3.0.0-beta.0",
"@docusaurus/preset-classic": "3.0.0-beta.0",
"@docusaurus/remark-plugin-npm2yarn": "3.0.0-beta.0",
"@docusaurus/theme-classic": "3.0.0-beta.0",
"@docusaurus/theme-common": "3.0.0-beta.0",
"@docusaurus/theme-live-codeblock": "3.0.0-beta.0",
"@docusaurus/theme-mermaid": "3.0.0-beta.0",
"@docusaurus/utils": "3.0.0-beta.0",
"@docusaurus/utils-common": "3.0.0-beta.0",
"@popperjs/core": "^2.11.8",
"@swc/core": "1.2.197",
"clsx": "^1.2.1",
@ -83,8 +83,8 @@
]
},
"devDependencies": {
"@docusaurus/eslint-plugin": "3.0.0-alpha.0",
"@docusaurus/tsconfig": "3.0.0-alpha.0",
"@docusaurus/eslint-plugin": "3.0.0-beta.0",
"@docusaurus/tsconfig": "3.0.0-beta.0",
"@types/jest": "^29.5.3",
"cross-env": "^7.0.3",
"rimraf": "^3.0.2"

View file

@ -137,8 +137,6 @@ For every route transition, there will be several important timings:
Note that the new page's DOM is only available during event (4). If you need to manipulate the new page's DOM, you'll likely want to use `onRouteDidUpdate`, which will be fired as soon as the DOM on the new page has mounted.
```js title="myClientModule.js"
import type {Location} from 'history';
export function onRouteDidUpdate({location, previousLocation}) {
// Don't execute if we are still on the same page; the lifecycle may be fired
// because the hash changes (e.g. when navigating between headings)

View file

@ -6,6 +6,8 @@ slug: /api/docusaurus-config
# `docusaurus.config.js`
import APITable from '@site/src/components/APITable';
:::info
Refer to the Getting Started [**Configuration**](../configuration.mdx) for examples.
@ -400,8 +402,24 @@ The global Docusaurus Markdown config.
- Type: `MarkdownConfig`
```ts
type MarkdownPreprocessor = (args: {
filePath: string;
fileContent: string;
}) => string;
type MDX1CompatOptions =
| boolean
| {
comments: boolean;
admonitions: boolean;
headingIds: boolean;
};
type MarkdownConfig = {
format: 'mdx' | 'md' | 'detect';
mermaid: boolean;
preprocessor?: MarkdownPreprocessor;
mdx1Compat: MDX1CompatOptions;
};
```
@ -410,12 +428,34 @@ Example:
```js title="docusaurus.config.js"
module.exports = {
markdown: {
format: 'mdx',
mermaid: true,
preprocessor: ({filePath, fileContent}) => {
return fileContent.replaceAll('{{MY_VAR}}', 'MY_VALUE');
},
mdx1Compat: {
comments: true,
admonitions: true,
headingIds: true,
},
},
};
```
- `mermaid`: when `true`, allows Docusaurus to render Markdown code blocks with `mermaid` language as Mermaid diagrams.
```mdx-code-block
<APITable>
```
| Name | Type | Default | Description |
| --- | --- | --- | --- |
| `format` | `'mdx' \| 'md' \| 'detect'` | `'mdx'` | The default parser format to use for Markdown content. Using 'detect' will select the appropriate format automatically based on file extensions: `.md` vs `.mdx`. |
| `mermaid` | `boolean` | `false` | When `true`, allows Docusaurus to render Markdown code blocks with `mermaid` language as Mermaid diagrams. |
| `preprocessor` | `MarkdownPreprocessor` | `undefined` | Gives you the ability to alter the Markdown content string before parsing. Use it as a last-resort escape hatch or workaround: it is almost always better to implement a Remark/Rehype plugin. |
| `mdx1Compat` | `MDX1CompatOptions` | `{comments: true, admonitions: true, headingIds: true}` | Compatibility options to make it easier to upgrade to Docusaurus v3+. See the [MDX 2 PR for details](https://github.com/facebook/docusaurus/pull/8288). |
```mdx-code-block
</APITable>
```
### `customFields` {#customFields}

View file

@ -47,10 +47,10 @@ Used when the template argument is a git repo. It needs to be one of:
### `-p, --package-manager` {#package-manager}
Value should be one of `npm`, `yarn`, or `pnpm`. If it's not explicitly provided, Docusaurus will infer one based on:
Value should be one of `npm`, `yarn`, `pnpm`, or `bun`. If it's not explicitly provided, Docusaurus will infer one based on:
- The lockfile already present in the CWD (e.g. if you are setting up website in an existing project)
- The command used to invoke `create-docusaurus` (e.g. `npm init`, `npx`, `yarn create`, etc.)
- The command used to invoke `create-docusaurus` (e.g. `npm init`, `npx`, `yarn create`, `bunx`, etc.)
- Interactive prompting, in case all heuristics are not present
### `-s, --skip-install` {#skip-install}

View file

Before

Width:  |  Height:  |  Size: 92 KiB

After

Width:  |  Height:  |  Size: 92 KiB

Before After
Before After

View file

@ -49,6 +49,8 @@ In addition, `warn` and `error` will color the **entire** message for better att
The template literal tag evaluates the template and expressions embedded. `interpolate` returns a new string, while other logging functions prints it. Below is a typical usage:
```js
import logger from '@docusaurus/logger';
logger.info`Hello name=${name}! You have number=${money} dollars. Here are the ${
items.length > 1 ? 'items' : 'item'
} on the shelf: ${items}

View file

@ -68,6 +68,7 @@ Accepted fields:
| `feedOptions` | _See below_ | `{type: ['rss', 'atom']}` | Blog feed. |
| `feedOptions.type` | <code><a href="#FeedType">FeedType</a> \| <a href="#FeedType">FeedType</a>[] \| 'all' \| null</code> | **Required** | Type of feed to be generated. Use `null` to disable generation. |
| `feedOptions.createFeedItems` | <code><a href="#CreateFeedItemsFn">CreateFeedItemsFn</a> \| undefined</code> | `undefined` | An optional function which can be used to transform and / or filter the items in the feed. |
| `feedOptions.limit` | `number \| null \| false` | `20` | Limits the feed to the specified number of posts, `false` or `null` for all entries. Defaults to `20`. |
| `feedOptions.title` | `string` | `siteConfig.title` | Title of the feed. |
| `feedOptions.description` | `string` | <code>\`$\{siteConfig.title} Blog\`</code> | Description of the feed. |
| `feedOptions.copyright` | `string` | `undefined` | Copyright message. |

View file

@ -767,7 +767,7 @@ Accepted fields:
| --- | --- | --- | --- |
| `theme` | `PrismTheme` | `palenight` | The Prism theme to use for light-theme code blocks. |
| `darkTheme` | `PrismTheme` | `palenight` | The Prism theme to use for dark-theme code blocks. |
| `defaultLanguage` | `string` | `undefined` | The side of the navbar this item should appear on. |
| `defaultLanguage` | `string` | `undefined` | The default language to use for code blocks not declaring any explicit language. |
| `magicComments` | `MagicCommentConfig[]` | _see below_ | The list of [magic comments](../../guides/markdown-features/markdown-features-code-blocks.mdx#custom-magic-comments). |
```mdx-code-block

View file

@ -520,6 +520,7 @@ type BlogOptions = {
description?: string;
copyright: string;
language?: string; // possible values: http://www.w3.org/TR/REC-html40/struct/dirlang.html#langcodes
limit?: number | false | null; // defaults to 20
/** Allow control over the construction of BlogFeedItems */
createFeedItems?: (params: {
blogPosts: BlogPost[];

View file

@ -20,7 +20,7 @@ It is now up to you to choose how to host those static files.
:::
You can deploy your site to static site hosting services such as [Vercel](https://vercel.com/), [GitHub Pages](https://pages.github.com/), [Netlify](https://www.netlify.com/), [Render](https://render.com/docs/static-sites), [Surge](https://surge.sh/help/getting-started-with-surge)...
You can deploy your site to static site hosting services such as [Vercel](https://vercel.com/), [GitHub Pages](https://pages.github.com/), [Netlify](https://www.netlify.com/), [Render](https://render.com/docs/static-sites), and [Surge](https://surge.sh/help/getting-started-with-surge).
A Docusaurus site is statically rendered, and it can generally work without JavaScript!
@ -45,7 +45,7 @@ By default, this will load your site at [`http://localhost:3000/`](http://localh
## Trailing slash configuration {#trailing-slashes}
Docusaurus has a [`trailingSlash` config](./api/docusaurus.config.js.mdx#trailingSlash), to allow customizing URLs/links and emitted filename patterns.
Docusaurus has a [`trailingSlash` config](./api/docusaurus.config.js.mdx#trailingSlash) to allow customizing URLs/links and emitted filename patterns.
The default value generally works fine. Unfortunately, each static hosting provider has a **different behavior**, and deploying the exact same site to various hosts can lead to distinct results. Depending on your host, it can be useful to change this config.
@ -57,7 +57,7 @@ Use [slorber/trailing-slash-guide](https://github.com/slorber/trailing-slash-gui
## Using environment variables {#using-environment-variables}
Putting potentially sensitive information in the environment is common practice. However, in a typical Docusaurus website, the `docusaurus.config.js` file is the only interface to the Node.js environment (see [our architecture overview](advanced/architecture.mdx)), while everything else—MDX pages, React components... are client side and do not have direct access to the `process` global. In this case, you can consider using [`customFields`](api/docusaurus.config.js.mdx#customFields) to pass environment variables to the client side.
Putting potentially sensitive information in the environment is common practice. However, in a typical Docusaurus website, the `docusaurus.config.js` file is the only interface to the Node.js environment (see [our architecture overview](advanced/architecture.mdx)), while everything else (MDX pages, React components, etc.) are client side and do not have direct access to the `process` global variable. In this case, you can consider using [`customFields`](api/docusaurus.config.js.mdx#customFields) to pass environment variables to the client side.
```js title="docusaurus.config.js"
// If you are using dotenv (https://www.npmjs.com/package/dotenv)
@ -90,39 +90,39 @@ export default function Home() {
There are a few common hosting options:
- [Self hosting](#self-hosting) with an HTTP server like Apache2 or Nginx;
- Jamstack providers, e.g. [Netlify](#deploying-to-netlify) and [Vercel](#deploying-to-vercel). We will use them as references, but the same reasoning can apply to other providers.
- [GitHub Pages](#deploying-to-github-pages). (By definition, it is also Jamstack, but we compare it separately.)
- [Self hosting](#self-hosting) with an HTTP server like Apache2 or Nginx.
- Jamstack providers (e.g. [Netlify](#deploying-to-netlify) and [Vercel](#deploying-to-vercel)). We will use them as references, but the same reasoning can apply to other providers.
- [GitHub Pages](#deploying-to-github-pages) (by definition, it is also Jamstack, but we compare it separately).
If you are unsure of which one to choose, ask the following questions:
<details>
<summary>
How much resource (person-hours, money) am I willing to invest in this?
How many resources (money, person-hours, etc.) am I willing to invest in this?
</summary>
- 🔴 Self-hosting is the hardest to set up—you would usually need an experienced person to manage this. Cloud services are almost never free, and setting up an on-site server and connecting it to the WAN can be even more costly.
- 🟢 Jamstack providers can help you set up a working website in almost no time and offers features like server-side redirects that are easily configurable. Many providers offer generous build time quotas even for free plans that you would almost never exceed. However, it's still ultimately limited—you would need to pay once you hit the limit. Check the pricing page of your provider for details.
- 🔴 Self-hosting requires experience in networking as well as Linux and web server administration. It's the most difficult option, and would require the most time to manage successfully. Expense-wise, cloud services are almost never free, and purchasing/deploying an onsite server can be even more costly.
- 🟢 Jamstack providers can help you set up a working website in almost no time and offers features like server-side redirects that are easily configurable. Many providers offer generous build-time quotas even for free plans that you would almost never exceed. However, free plans have limits, and you would need to pay once you hit those limits. Check the pricing page of your provider for details.
- 🟡 The GitHub Pages deployment workflow can be tedious to set up. (Evidence: see the length of [Deploying to GitHub Pages](#deploying-to-github-pages)!) However, this service (including build and deployment) is always free for public repositories, and we have detailed instructions to help you make it work.
</details>
<details>
<summary>How much server-side configuration would I need?</summary>
<summary>How much server-side customization do I need?</summary>
- 🟢 With self-hosting, you have access to the entire server's configuration. You can configure the virtual host to serve different content based on the request URL; you can do complicated server-side redirects; you can put part of the site behind authentication... If you need a lot of server-side features, self-host your website.
- 🟡 Jamstack usually offers some server-side configurations, e.g. URLs formatting (trailing slashes), server-side redirects...
- 🔴 GitHub Pages doesn't expose server-side configurations besides enforcing HTTPS and setting CNAME.
- 🟢 With self-hosting, you have access to the entire server's configuration. You can configure the virtual host to serve different content based on the request URL, you can do complicated server-side redirects, you can implement authentication, and so on. If you need a lot of server-side features, self-host your website.
- 🟡 Jamstack usually offers some server-side configuration (e.g. URL formatting (trailing slashes), server-side redirects, etc.).
- 🔴 GitHub Pages doesn't expose server-side configuration besides enforcing HTTPS and setting CNAME records.
</details>
<details>
<summary>Do I have needs to cooperate?</summary>
<summary>Do I need collaboration-friendly deployment workflows?</summary>
- 🟡 Self-hosted services can achieve the same effect as Netlify, but with much more heavy-lifting. Usually, you would have a specific person who looks after the deployment, and the workflow won't be very git-based as opposed to the other two options.
- 🟡 Self-hosted services can leverage continuous deployment functionality like Netlify, but more heavy-lifting is involved. Usually, you would designate a specific person to manage the deployment, and the workflow wouldn't be very git-based as opposed to the other two options.
- 🟢 Netlify and Vercel have deploy previews for every pull request, which is useful for a team to review work before merging to production. You can also manage a team with different member access to the deployment.
- 🟡 GitHub Pages cannot do deploy previews in a non-convoluted way. One repo can only be associated with one site deployment. On the other hand, you can control who has write access to the site's deployment.
@ -146,9 +146,9 @@ It is not the best option, compared to a static hosting provider / CDN.
:::warning
In the following sections, we will introduce a few common hosting providers and how they should be configured to deploy Docusaurus sites most efficiently. Some of the writeups are provided by external contributors. Docusaurus is not interest-related with any of the services. The documentation may not be up-to-date: recent changes in their API may not be reflected on our side. If you see outdated content, PRs are welcome.
In the following sections, we will introduce a few common hosting providers and how they should be configured to deploy Docusaurus sites most efficiently. Docusaurus is not affiliated with any of these services, and this information is provided for convenience only. Some of the write-ups are provided by third-parties, and recent API changes may not be reflected on our side. If you see outdated content, PRs are welcome.
For the same concern of up-to-datedness, we have stopped accepting PRs adding new hosting options. You can, however, publish your writeup on a separate site (e.g. your blog, or the provider's official website), and ask us to include a link to your writeup.
Because we can only provide this content on a best-effort basis only, we have stopped accepting PRs adding new hosting options. You can, however, publish your writeup on a separate site (e.g. your blog, or the provider's official website), and ask us to include a link to your writeup.
:::
@ -200,7 +200,7 @@ If you decide to use the `website` folder as Netlify's base directory, Netlify w
By default, Netlify adds trailing slashes to Docusaurus URLs.
It is recommended to disable the Netlify setting `Post Processing > Asset Optimization > Pretty Urls` to prevent lowercased URLs, unnecessary redirects, and 404 errors.
It is recommended to disable the Netlify setting `Post Processing > Asset Optimization > Pretty Urls` to prevent lowercase URLs, unnecessary redirects, and 404 errors.
**Be very careful**: the `Disable asset optimization` global checkbox is broken and does not really disable the `Pretty URLs` setting in practice. Please make sure to **uncheck it independently**.
@ -216,19 +216,19 @@ Deploying your Docusaurus project to [Vercel](https://vercel.com/) will provide
To deploy your Docusaurus project with a [Vercel for Git Integration](https://vercel.com/docs/concepts/git), make sure it has been pushed to a Git repository.
Import the project into Vercel using the [Import Flow](https://vercel.com/import/git). During the import, you will find all relevant options preconfigured for you; however, you can choose to change any of these options, a list of which can be found [here](https://vercel.com/docs/build-step#build-&-development-settings).
Import the project into Vercel using the [Import Flow](https://vercel.com/import/git). During the import, you will find all relevant options preconfigured for you; however, you can choose to change any of these [options](https://vercel.com/docs/build-step#build-&-development-settings).
After your project has been imported, all subsequent pushes to branches will generate [Preview Deployments](https://vercel.com/docs/platform/deployments#preview), and all changes made to the [Production Branch](https://vercel.com/docs/git-integrations#production-branch) (usually "main" or "master") will result in a [Production Deployment](https://vercel.com/docs/platform/deployments#production).
## Deploying to GitHub Pages {#deploying-to-github-pages}
Docusaurus provides an easy way to publish to [GitHub Pages](https://pages.github.com/), which comes for free with every GitHub repository.
Docusaurus provides an easy way to publish to [GitHub Pages](https://pages.github.com/), which comes free with every GitHub repository.
### Overview {#github-pages-overview}
Usually, there are two repositories (at least, two branches) involved in a publishing process: the branch containing the source files, and the branch containing the build output to be served with GitHub Pages. In the following tutorial, they will be referred to as **"source"** and **"deployment"**, respectively.
Usually, there are two repositories (at least two branches) involved in a publishing process: the branch containing the source files, and the branch containing the build output to be served with GitHub Pages. In the following tutorial, they will be referred to as **"source"** and **"deployment"**, respectively.
Each GitHub repository is associated with a GitHub Pages service. If the deployment repository is called `my-org/my-project` (where `my-org` is the organization name or username), the deployed site will appear at `https://my-org.github.io/my-project/`. Specially, if the deployment repository is called `my-org/my-org.github.io` (the _organization GitHub Pages repo_), the site will appear at `https://my-org.github.io/`.
Each GitHub repository is associated with a GitHub Pages service. If the deployment repository is called `my-org/my-project` (where `my-org` is the organization name or username), the deployed site will appear at `https://my-org.github.io/my-project/`. If the deployment repository is called `my-org/my-org.github.io` (the _organization GitHub Pages repo_), the site will appear at `https://my-org.github.io/`.
:::info
@ -250,9 +250,9 @@ First, modify your `docusaurus.config.js` and add the following params:
| --- | --- |
| `organizationName` | The GitHub user or organization that owns the deployment repository. |
| `projectName` | The name of the deployment repository. |
| `deploymentBranch` | The name of deployment branch. Defaults to `'gh-pages'` for non-organization GitHub Pages repos (`projectName` not ending in `.github.io`). Otherwise, this needs to be explicit as a config field or environment variable. |
| `deploymentBranch` | The name of the deployment branch. It defaults to `'gh-pages'` for non-organization GitHub Pages repos (`projectName` not ending in `.github.io`). Otherwise, it needs to be explicit as a config field or environment variable. |
These fields also have their environment variable counterparts, which have a higher priority: `ORGANIZATION_NAME`, `PROJECT_NAME`, and `DEPLOYMENT_BRANCH`.
These fields also have their environment variable counterparts which have a higher priority: `ORGANIZATION_NAME`, `PROJECT_NAME`, and `DEPLOYMENT_BRANCH`.
:::warning
@ -290,6 +290,8 @@ By default, GitHub Pages runs published files through [Jekyll](https://jekyllrb.
| `GIT_USER` | The username for a GitHub account that **has push access to the deployment repo**. For your own repositories, this will usually be your GitHub username. Required if not using SSH, and ignored otherwise. |
| `GIT_PASS` | Personal access token of the git user (specified by `GIT_USER`), to facilitate non-interactive deployment (e.g. continuous deployment) |
| `CURRENT_BRANCH` | The source branch. Usually, the branch will be `main` or `master`, but it could be any branch except for `gh-pages`. If nothing is set for this variable, then the current branch from which `docusaurus deploy` is invoked will be used. |
| `GIT_USER_NAME` | The `git config user.name` value to use when pushing to the deployment repo |
| `GIT_USER_EMAIL` | The `git config user.email` value to use when pushing to the deployment repo |
GitHub enterprise installations should work in the same manner as github.com; you only need to set the organization's GitHub Enterprise host as an environment variable:
@ -363,7 +365,7 @@ Here are two approaches to deploying your docs with GitHub Actions. Based on the
<TabItem value="same" label="Same">
```
While you can have both jobs defined in the same workflow file, the original `deploy` workflow will always be listed as skipped in the PR check suite status, which is not communicative of the actual status and provides no value to the review process. We therefore propose to manage them as separate workflows instead.
While you can have both jobs defined in the same workflow file, the original `deploy` workflow will always be listed as skipped in the PR check suite status, which is not indicative of the actual status and provides no value to the review process. We therefore propose to manage them as separate workflows instead.
We will use a popular third-party deployment action: [peaceiris/actions-gh-pages](https://github.com/peaceiris/actions-gh-pages#%EF%B8%8F-docusaurus).
@ -460,7 +462,7 @@ jobs:
<TabItem value="remote" label="Remote">
```
A cross-repo publish is more difficult to set up, because you need to push to another repo with permission checks. We will be using SSH to do the authentication.
A cross-repo publish is more difficult to set up because you need to push to another repo with permission checks. We will be using SSH to do the authentication.
1. Generate a new [SSH key](https://help.github.com/en/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent). Since this SSH key will be used in CI, make sure to not enter any passphrase.
2. By default, your public key should have been created in `~/.ssh/id_rsa.pub`; otherwise, use the name you've provided in the previous step to add your key to [GitHub deploy keys](https://developer.github.com/v3/guides/managing-deploy-keys/).
@ -468,7 +470,11 @@ A cross-repo publish is more difficult to set up, because you need to push to an
4. You'll need your private key as a [GitHub secret](https://help.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets) to allow Docusaurus to run the deployment for you.
5. Copy your private key with `pbcopy < ~/.ssh/id_rsa` and paste a GitHub secret with the name `GH_PAGES_DEPLOY` on your source repository. Copy the file content if the command line doesn't work for you. Save your secret.
6. Create your [documentation workflow file](https://help.github.com/en/actions/configuring-and-managing-workflows/configuring-a-workflow#creating-a-workflow-file) in `.github/workflows/`. In this example it's `deploy.yml`.
7. You should have essentially: the source repo with the GitHub workflow set with the private SSH key as GitHub Secret and your deployment repo set with the public SSH key in GitHub Deploy Keys.
At this point, you should have:
- the source repo with the GitHub workflow set with the private SSH key as the GitHub Secret, and
- your deployment repo set with the public SSH key in GitHub Deploy Keys.
<details>
@ -541,13 +547,16 @@ jobs:
<summary>Site not deployed properly?</summary>
After pushing to main, if you don't see your site published at the desired location (for example, it says "There isn't a GitHub Pages site here", or it's showing your repo's README.md file), check the following:
After pushing to main, if you don't see your site published at the desired location (for example, it says "There isn't a GitHub Pages site here", or it's showing your repo's README.md file), try the following:
- It may take a few minutes for GitHub pages to pick up the new files, so wait for about 3 minutes and refresh before concluding it isn't working.
- On your repo's landing page, you should see a little green tick next to the last commit's title, indicating the CI has passed. If you see a cross, it means the build or deployment failed, and you should check the log for more debugging information.
- Click on the tick and make sure your see a "Deploy to GitHub Pages" workflow. Names like "pages build and deployment / deploy" are GitHub's default workflows, indicating your custom deployment workflow failed to be triggered at all. Make sure the YAML files are put under the `.github/workflows` folder, and the trigger condition is set correctly (for example, if your default branch is "master" instead of "main", you need to change the `on.push` property).
- We are using `gh-pages` as the deployment branch. Under your repo's Settings > Pages, make sure the "Source" (which is the source for the _deployment_ files, not "source" as in our terminology) is set to "gh-pages" + "/ (root)".
- If you are using a custom domain, make sure the DNS record is pointing to the GitHub pages servers' IP.
- Wait about three minutes and refresh. It may take a few minutes for GitHub pages to pick up the new files.
- Check your repo's landing page for a little green tick next to the last commit's title, indicating the CI has passed. If you see a cross, it means the build or deployment failed, and you should check the log for more debugging information.
- Click on the tick and make sure you see a "Deploy to GitHub Pages" workflow. Names like "pages build and deployment / deploy" are GitHub's default workflows, indicating your custom deployment workflow failed to be triggered at all. Make sure the YAML files are placed under the `.github/workflows` folder, and that the trigger condition is set correctly (e.g., if your default branch is "master" instead of "main", you need to change the `on.push` property).
- Under your repo's Settings > Pages, make sure the "Source" (which is the source for the _deployment_ files, not "source" as in our terminology) is set to "gh-pages" + "/ (root)", since we are using `gh-pages` as the deployment branch.
If you are using a custom domain:
- Verify that you have the correct DNS records set up if you're using a custom domain. See [GitHub pages documentation on configuring custom domains](https://docs.github.com/en/pages/configuring-a-custom-domain-for-your-github-pages-site/about-custom-domains-and-github-pages). Also, please be aware that it may take up to 24 hours for DNS changes to propagate through the internet.
</details>
@ -673,6 +682,12 @@ trigger:
Now, whenever you push a new tag to GitHub, this trigger will start the drone CI job to publish your website.
## Deploying to Flightcontrol {#deploying-to-flightcontrol}
[Flightcontrol](https://www.flightcontrol.dev/?ref=docusaurus) is a service that automatically builds and deploys your web apps to AWS Fargate directly from your Git repository. It gives you full access to inspect and make infrastructure changes without the limitations of a traditional PaaS.
Get started by following [Flightcontrol's step-by-step Docusaurus guide](https://www.flightcontrol.dev/docs/reference/examples/docusaurus/?ref=docusaurus).
## Deploying to Koyeb {#deploying-to-koyeb}
[Koyeb](https://www.koyeb.com) is a developer-friendly serverless platform to deploy apps globally. The platform lets you seamlessly run Docker containers, web apps, and APIs with git-based deployment, native autoscaling, a global edge network, and built-in service mesh and discovery. Check out the [Koyeb's Docusaurus deployment guide](https://www.koyeb.com/tutorials/deploy-docusaurus-on-koyeb) to get started.
@ -698,7 +713,8 @@ Now, whenever you push a new tag to GitHub, this trigger will start the drone CI
- Navigate to your application **Settings**
- Select **Port**
- Add port used by your Docusaurus application
5. Deploy All you have to do now is to navigate to your application and click on **Deploy**.
5. Deploy
- All you have to do now is to navigate to your application and click on **Deploy**.
![Deploy the app](https://hub.qovery.com/img/heroku/heroku-1.png)
@ -706,47 +722,47 @@ That's it. Watch the status and wait till the app is deployed. To open the appli
## Deploying to Hostman {#deploying-to-hostman}
[Hostman](https://hostman.com/) allows you to host static websites for free. Hostman automates everything, you just need to connect your repository and follow easy steps:
[Hostman](https://hostman.com/) allows you to host static websites for free. Hostman automates everything, you just need to connect your repository and follow these easy steps:
1. Create a service.
To deploy a Docusaurus static website, click **Create** in the top-left corner of your [Dashboard](https://dashboard.hostman.com/) and choose **Front-end app or static website**.
- To deploy a Docusaurus static website, click **Create** in the top-left corner of your [Dashboard](https://dashboard.hostman.com/) and choose **Front-end app or static website**.
2. Select the project to deploy.
If you are logged in to Hostman with your GitHub, GitLab, or Bitbucket account, at this point you will see the repository with your projects, including the private ones.
- If you are logged in to Hostman with your GitHub, GitLab, or Bitbucket account, you will see the repository with your projects, including the private ones.
Choose the project you want to deploy. It must contain the directory with the project's files (e.g. `website`).
- Choose the project you want to deploy. It must contain the directory with the project's files (e.g. `website`).
To access a different repository, click **Connect another repository**.
- To access a different repository, click **Connect another repository**.
If you didn't use your Git account credentials to log in, you'll be able to access the necessary account now, and then select the project.
- If you didn't use your Git account credentials to log in, you'll be able to access the necessary account now, and then select the project.
3. Configure the build settings.
Next, the **Website customization** window will appear. Choose the **Static website** option from the list of frameworks.
- Next, the **Website customization** window will appear. Choose the **Static website** option from the list of frameworks.
The **Directory with app** points at the directory that will contain the project's files after the build. You can leave it empty if during Step 2 you selected the repository with the contents of the website (or `my_website`) directory.
- The **Directory with app** points at the directory that will contain the project's files after the build. If you selected the repository with the contents of the website (or `my_website`) directory during Step 2, you can leave it empty.
The standard build command for Docusaurus will be:
- The standard build command for Docusaurus is:
```bash npm2yarn
npm run build
```
You can modify the build command if needed. You can enter multiple commands separated by `&&`.
- You can modify the build command if needed. You can enter multiple commands separated by `&&`.
4. Deploy.
Click **Deploy** to start the build process.
- Click **Deploy** to start the build process.
Once it starts, you will enter the deployment log. If there are any issues with the code, you will get warning or error messages in the log, specifying the cause of the problem. Usually, the log contains all the debugging data you'll need.
- Once it starts, you will enter the deployment log. If there are any issues with the code, you will get warning or error messages in the log specifying the cause of the problem. Usually, the log contains all the debugging data you'll need.
When the deployment is complete, you will receive an email notification and also see a log entry. All done! Your project is up and ready.
- When the deployment is complete, you will receive an email notification and also see a log entry. All done! Your project is up and ready.
## Deploying to Surge {#deploying-to-surge}
Surge is a [static web hosting platform](https://surge.sh/help/getting-started-with-surge), it is used to deploy your Docusaurus project from the command line in a minute. Deploying your project to Surge is easy and it is also free (including a custom domain and SSL).
Surge is a [static web hosting platform](https://surge.sh/help/getting-started-with-surge) that you can use to deploy your Docusaurus project from the command line in seconds. Deploying your project to Surge is easy and free (including custom domains and SSL certs).
Deploy your app in a matter of seconds using surge with the following steps:
@ -765,11 +781,11 @@ Deploy your app in a matter of seconds using surge with the following steps:
First-time users of Surge would be prompted to create an account from the command line (which happens only once).
Confirm that the site you want to publish is in the `build` directory, a randomly generated subdomain `*.surge.sh subdomain` is always given (which can be edited).
Confirm that the site you want to publish is in the `build` directory. A randomly generated subdomain `*.surge.sh subdomain` is always given (which can be edited).
### Using your domain {#using-your-domain}
If you have a domain name you can deploy your site using surge to your domain using the command:
If you have a domain name you can deploy your site using the command:
```bash
surge build/ your-domain.com
@ -812,7 +828,7 @@ See [docs](https://docs.quantcdn.io/docs/cli/continuous-integration) and [blog](
## Deploying to Azure Static Web Apps {#deploying-to-azure-static-web-apps}
[Azure Static Web Apps](https://docs.microsoft.com/en-us/azure/static-web-apps/overview) is a service that automatically builds and deploys full-stack web apps to Azure directly from the code repository, simplifying the developer experience for CI/CD. Static Web Apps separates the web application's static assets from its dynamic (API) endpoints. Static assets are served from globally-distributed content servers, making it faster for clients to retrieve files using servers nearby. Dynamic APIs are scaled with serverless architectures, using an event-driven functions-based approach that is more cost-effective and scales on demand. Get started in a few minutes by following [this step-by-step guide](https://dev.to/azure/11-share-content-with-docusaurus-azure-static-web-apps-30hc).
[Azure Static Web Apps](https://docs.microsoft.com/en-us/azure/static-web-apps/overview) is a service that automatically builds and deploys full-stack web apps to Azure directly from the code repository, simplifying the developer experience for CI/CD. Static Web Apps separates the web application's static assets from its dynamic (API) endpoints. Static assets are served from globally-distributed content servers, making it faster for clients to retrieve files using servers nearby. Dynamic APIs are scaled with serverless architectures using an event-driven functions-based approach that is more cost-effective and scales on demand. Get started in a few minutes by following [this step-by-step guide](https://dev.to/azure/11-share-content-with-docusaurus-azure-static-web-apps-30hc).
## Deploying to Kinsta Application Hosting {#deploying-to-kinsta}

View file

@ -47,6 +47,7 @@ Assume that you have the following in your configuration:
module.exports = {
// ...
presets: [
[
'@docusaurus/preset-classic',
{
docs: {
@ -58,6 +59,7 @@ module.exports = {
// ...
},
],
],
};
```
@ -67,6 +69,7 @@ To enter docs-only mode, change it to like this:
module.exports = {
// ...
presets: [
[
'@docusaurus/preset-classic',
{
docs: {
@ -79,6 +82,7 @@ module.exports = {
// ...
},
],
],
};
```

Some files were not shown because too many files have changed in this diff Show more