Files
zitadel/docs
Markus Heinemann 1728297d3c docs(oidc-playground): update scopes and default instance domain (#9995)
# Which Problems Are Solved

This PR resolves #4845 by enhancing the OIDC Playground:
* set default instance domain to `http://localhost:8080`
* openid checkbox is now disabled
* add explanation texts for custom zitadel scopes

# How the Problems Are Solved

* The checkbox for the `openid` scope is set to `disabled`
* The default value for the instance domain is update by using
`setInstance`
* A new map with explanation texts for the custom scopes is introduced.
During the rendering process of the scope checkboxes the value from this
map is displayed, if the scope exists as key.

# Additional Changes

During the local setup of the documentation webapp I got some react
errors on the authrequest page. This issue has ben solved by refactoring
the usage of an `useEffect` block.

# Additional Context

- Closes #4845

PS. 
I did not found any scripts for linting/formatting (e.g. eslint,
prettier) for the docs project. This is a bit annoying because when I
use my local configurations of eslint/prettier the whole file get's
refactored with unnecessary changes (change of import order, indention
etc.). It would be great to add some custom configurations to to make
the development process easier and enforce a consistent coding style :)

Co-authored-by: Markus Heinemann <markus@trustify.ch>
Co-authored-by: Tim Möhlmann <tim+github@zitadel.com>
2025-08-04 11:24:54 +00:00
..

ZITADEL-Docs

This website is built using Docusaurus 2, a modern static website generator.

The documentation is part of the ZITADEL monorepo and uses pnpm and Turbo for development and build processes.

Quick Start

# From the repository root
pnpm install

# Start development server (with Turbo)
pnpm turbo dev --filter=zitadel-docs

# Or start directly from docs directory
cd docs && pnpm start

The site will be available at http://localhost:3000

Available Scripts

All scripts can be run from the repository root using Turbo:

# Development server with live reload
pnpm turbo dev --filter=zitadel-docs

# Build for production
pnpm turbo build --filter=zitadel-docs

# Generate API documentation and configuration docs
pnpm turbo generate --filter=zitadel-docs

# Lint and fix code
pnpm turbo lint --filter=zitadel-docs

# Serve production build locally
cd docs && pnpm serve

Add new Sites to existing Topics

To add a new site to the already existing structure simply save the md file into the corresponding folder and append the sites id int the file sidebars.js.

If you are introducing new APIs (gRPC), you need to add a new entry to docusaurus.config.js under the plugins section.

Build Process

The documentation build process automatically:

  1. Downloads required protoc plugins - Ensures protoc-gen-connect-openapi is available
  2. Generates gRPC documentation - Creates API docs from proto files
  3. Generates API documentation - Creates OpenAPI specification docs
  4. Copies configuration files - Includes configuration examples
  5. Builds the Docusaurus site - Generates the final static site

Local Development

Standard Development

# Install dependencies
pnpm install

# Start development server
pnpm start

API Documentation Development

When working on the API docs, run a local development server with:

pnpm start:api

Container Image

If you just want to start docusaurus locally without installing node you can fallback to our container image. Execute the following commands from the repository root to build and start a local version of ZITADEL

docker build -f docs/Dockerfile . -t zitadel-docs
docker run -p 8080:8080 zitadel-docs