Limitations
- No custom plugins.
plugins: in redocly.yaml (also when inherited through extends or set per API) is not supported: Redocly runs in its browser mode, which cannot load JavaScript. All built-in rulesets, rules and decorators work. Preprocessors need a plugin, so there is no skipPreprocessors parameter.
- Output paths are Maven parameters.
apis.<alias>.output in redocly.yaml is ignored; use outputDirectory or outputFile.
- Not every Redocly CLI command has a goal. The plugin provides lint, bundle, check-config, stats, score, join, split and build-docs. Previews,
push, login and the other commands are not available.
- Documentation pages need the internet when viewed. build-docs pre-renders the reference, but the page loads the Redoc script from
cdn.redocly.com (with a subresource integrity hash) and fonts from Google Fonts (disableGoogleFont=true leaves the fonts out). The pages render with Redoc 2, as the Redocly CLI's build-docs does today; Redocly is moving the command to Redoc 3, and the goal will follow.
- Format support follows upstream. join and score accept OpenAPI 3 only; split accepts OpenAPI 3 and AsyncAPI; build-docs accepts OpenAPI 2.0 (converted while loading), 3.0 and 3.1; join is experimental upstream. Split does not read
redocly.yaml.
- Bundle problems are always printed in codeframe format. The bundle goal has no
format parameter; use lint for other formats and for report files.
dereferenced=true cannot write circular references as JSON. The bundle fails with Circular references are not supported for JSON output; keep YAML output or leave the reference in place.
- Speed. The default interpreter is several times slower than Node.js on large descriptions, and build-docs is the slowest goal; see performance for the native isolate.