skillfed

peakrdl-html

HTML documentation generator for SystemRDL-based register models

peakrdl-html v2.12.2 195.8K downloads/30d#9,804 on PyPI65
Copyleft license LGPLv3 Active released

What it is and what it does

PeakRDL-html is a documentation generator that takes compiled SystemRDL register descriptions and produces browsable HTML documentation. It's designed as an exporter plugin for the PeakRDL ecosystem, accepting elaborated register trees and rendering them into static HTML with configurable templates, markdown support, and optional source-code links.

The package is typically used either through the PeakRDL command-line tool (the easiest path) or directly via its Python API by passing a compiled register model. It supports customization through user-defined templates, static assets, and configuration options like field ordering, signal visibility, and extra documentation properties. Dependencies include Jinja2 for templating, markdown processors for rich text support, and git-me-the-url for generating links back to register definitions in source control.

Use it for:

  • Generate browsable HTML documentation from SystemRDL register definitions for hardware design teams.
  • Integrate register documentation into a CI/CD pipeline to auto-generate docs on each design update.
  • Customize register documentation layout and styling by providing user-defined Jinja2 templates.
  • Create links from generated documentation back to register definitions in a Git repository.
  • Document user-defined register properties alongside built-in SystemRDL properties in HTML output.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Generates HTML documentation for register address spaces from compiled SystemRDL register descriptions, converting hardware register models into browsable web documentation.

Yes. The package is actively maintained, has no known vulnerabilities, installs with low friction, and solves a specific and well-defined problem in the hardware design documentation workflow. The LGPLv3 license is standard for open-source tools and poses no barrier to most users. Install it if you work with SystemRDL register models and need to generate documentation.

Install

peakrdl-html on PyPI

pip

pip install peakrdl-html

uv

uv add peakrdl-html

poetry

poetry add peakrdl-html

Installing peakrdl-html

Before you install

Low friction install with a pure-Python wheel. The package is actively maintained with a recent release and no known vulnerabilities. Five runtime dependencies are all standard Python packages (Jinja2, markdown, systemrdl-compiler, git-me-the-url, python-markdown-math), making installation straightforward.

License in practice

Licensed under LGPLv3 (copyleft). You can use this package freely, but any modifications you distribute must also be released under LGPLv3, and you must provide access to the modified source code.

Quickstart

from peakrdl_html import HTMLExporter

exporter = HTMLExporter()
exporter.export(root, "path/to/output")

# Or via command line:
# peakrdl html your_design.rdl -o output_dir

Requires a compiled SystemRDL root node or AddrmapNode from systemrdl-compiler as input; the package is an exporter, not a compiler.

Verify before relying

  • Whether the package works with Python versions beyond 3.7 (requires_python states >=3.7, but current Python support tier is not specified).
  • Performance characteristics when exporting large register models or complex address spaces.

Package facts

License LGPLv3 (copyleft)
Python support supports the current Python release (>=3.7)
Install friction low — pure-Python wheel
Runtime dependencies 5 — systemrdl-compiler, Jinja2, markdown, git-me-the-url, python-markdown-math
Maintenance actively maintained — 161 days since the last release
Last repo commit
First released
Downloads 195,830/month — #9,804 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: peakrdl_html-2.12.2-py3-none-any.whl

Keywords: SystemRDL, PeakRDL, CSR, compiler, tool, registers, generator, HTML, documentation

Development Status :: 5 - Production/StableIntended Audience :: DevelopersLicense :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)Operating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyTopic :: Scientific/Engineering :: Electronic Design Automation (EDA)Topic :: Software Development :: Documentation

Tags

SystemRDL HTML documentation generatorregister address space documentationhardware register model to HTMLCSR documentation generatorSystemRDL compiler HTML export
hardware-designregister-documentationeda

More Documentation packages