sphinx-needs Integration¶
sphinx-hextra automatically styles sphinx-needs output whenever the extension is enabled. Tables, need blocks, status and type badges all pick up the theme’s colors and rounded corners in both light and dark mode — no configuration required.
The sphinx-needs configuration for this site lives in ubproject.toml and is loaded via needs_from_toml = "ubproject.toml" in conf.py.
Requirements¶
The theme must be visually recognisable as “Hextra on Sphinx” out of the box — no user configuration required beyond |
Users must be able to drop Hextra-style components (callouts, cards, tabs, steps, filetrees) into their pages using native Sphinx / MyST syntax. |
The theme must render sphinx-needs output (tables, need blocks, badges) in a visual style consistent with the rest of the theme. |
Specifications¶
Ship a full custom |
Implement |
Inject a scoped |
Test cases¶
Integration test |
Integration tests under |
|
Traceability¶
The needtable directive renders a live overview of every need defined on this page:
ID |
Title |
Type |
Status |
Tags |
Outgoing |
|---|---|---|---|---|---|
Component directives |
req |
closed |
directive |
||
Beautiful by default |
req |
closed |
theme |
||
sphinx-needs compatibility |
req |
closed |
theme |
||
Five core directives |
spec |
closed |
directive |
||
Hextra layout chrome |
spec |
closed |
theme |
||
Scoped needs stylesheet |
spec |
closed |
css |
||
Theme builds with zero warnings |
test |
closed |
|||
Every directive renders semantic HTML |
test |
closed |
|||
Needs CSS is loaded only when needed |
test |
closed |