{"id":8407,"library":"peakrdl-html","title":"HTML Documentation Generator for SystemRDL","description":"PeakRDL-html is a plugin for the PeakRDL parser that generates interactive HTML documentation for SystemRDL-based register models. It processes RDL source files to produce browsable web pages detailing register maps, fields, and properties. The current version is 2.12.2, and it maintains an active development cycle with regular updates addressing bug fixes and new features.","status":"active","version":"2.12.2","language":"en","source_language":"en","source_url":"https://github.com/SystemRDL/PeakRDL-html","tags":["systemrdl","hardware-design","documentation","html-generator","register-description"],"install":[{"cmd":"pip install peakrdl-html","lang":"bash","label":"Install latest version"}],"dependencies":[{"reason":"PeakRDL-html is a plugin for the PeakRDL parser; 'peakrdl' is a direct runtime dependency.","package":"peakrdl","optional":false},{"reason":"Used for templating the HTML output.","package":"Jinja2","optional":false}],"imports":[{"note":"While programmatic imports are possible (e.g., for custom integrations), the primary and recommended way for end-users to generate documentation is via the 'peakrdl --html' command-line interface.","symbol":"HtmlBackend","correct":"from peakrdl_html.backend import HtmlBackend"}],"quickstart":{"code":"echo 'addrmap my_block { reg my_reg { field { hw=w; sw=r; } my_field[32]; } @0x0; };' > example.rdl\npip install peakrdl-html\npeakrdl --html -o docs example.rdl\nls docs/index.html","lang":"bash","description":"This quickstart demonstrates how to create a minimal SystemRDL file and then use the `peakrdl` command-line tool with the `--html` flag to generate documentation. The output HTML files will be placed in the specified 'docs' directory. Ensure `peakrdl-html` is installed, which will also pull in `peakrdl`."},"warnings":[{"fix":"Upgrade to Python 3.7 or newer. Python 3.7 is the minimum requirement for versions 2.11.0 and above.","message":"Python 3.5 and 3.6 support was dropped in v2.11.0. Users on these older Python versions will encounter 'Unsupported Python version' errors or installation failures.","severity":"breaking","affected_versions":">=2.11.0"},{"fix":"Update your SystemRDL source files to use `$...$` for inline math expressions instead of `\\(...)\\`.","message":"Inline math tags using escaped parentheses `\\(...)\\` were deprecated in v2.11.0 and will be removed in v3.0. These should be replaced with dollar-style `$...$` inline math tags.","severity":"deprecated","affected_versions":">=2.11.0"},{"fix":"If you were programmatically interacting with `peakrdl.html` components, you may need to adjust imports. For typical usage, rely on the `peakrdl --html` command-line interface, as direct Python API usage for generation is less common.","message":"The `peakrdl.html` namespace package was removed in v2.10.0. Any direct imports from this path will now fail.","severity":"breaking","affected_versions":">=2.10.0"}],"env_vars":null,"last_verified":"2026-04-16T00:00:00.000Z","next_check":"2026-07-15T00:00:00.000Z","problems":[{"fix":"The `peakrdl.html` namespace is no longer available for direct import. If you intended to use the HTML backend, the standard method is via the `peakrdl --html` command-line tool. If you need programmatic access, look for specific classes or functions directly under `peakrdl_html` (e.g., `from peakrdl_html.backend import HtmlBackend`).","cause":"This error occurs when trying to import from the deprecated `peakrdl.html` namespace package, which was removed in version 2.10.0.","error":"ModuleNotFoundError: No module named 'peakrdl.html'"},{"fix":"Upgrade your Python environment to version 3.7 or higher to use peakrdl-html versions 2.11.0+.","cause":"You are attempting to install or run peakrdl-html version 2.11.0 or newer with an unsupported Python version (3.5 or 3.6).","error":"Error: peakrdl-html requires Python 3.7 or greater"}]}