Every icon used in Bristlenose HTML reports, shown at multiple sizes. Currently a mix of inline SVGs, Unicode characters, and CSS pseudo-elements. Goal: migrate to a single coherent SVG icon set.
Custom SVG icons embedded directly in HTML by render_html.py.
All use stroke="currentColor" for CSS colour inheritance.
These are the most "proper" icons in the system.
Characters used as icons throughout the UI. Rendered via HTML entities in
render_html.py or via textContent in JS modules.
These are the ones most in need of replacement with proper SVG icons.
Characters rendered via CSS ::before / ::after
pseudo-elements. These bypass the DOM entirely.
| Icon | Glyph | Type | Uses | Source | Replaceable? |
|---|---|---|---|---|---|
| Search | SVG | 1 | render_html.py |
Replace with icon set version | |
| Search clear | SVG | 1 | render_html.py |
Replace with icon set version | |
| External link | SVG | 1 | render_html.py |
Replace with icon set version | |
| Filter | SVG | 1 | render_html.py |
Replace with icon set version | |
| Chevron down | SVG | 2 | render_html.py |
Replace with icon set version | |
| Copy / clipboard | SVG | 1 | render_html.py |
Replace with icon set version | |
| Eye-slash / hide | SVG | 1 | render_html.py |
Replace with icon set version | |
| Delete / close | × | CHAR | 7+ | CSS, JS, HTML | Priority — most used icon, fragile centering |
| Star | ★ | CHAR | 2 | render_html.py |
Yes — filled/outline star from icon set |
| Pencil | ✎ | CHAR | 3 | render_html.py |
Yes — edit/pencil icon from icon set |
| Back arrow | ← | CHAR | 1 | render_html.py |
Yes — arrow-left from icon set |
| Journey arrow | → | CHAR | 1 | render_html.py |
Yes — arrow-right from icon set |
| Undo / restore | ↩ | CHAR | 1 | render_html.py |
Yes — undo/rotate-ccw from icon set |
| Heart | ♥ | CHAR | 1 | render_html.py |
Low priority — decorative only |
| Plus | + | CHAR | 2 | JS, HTML | Yes — plus icon from icon set |
| Down triangle | ▾ | CHAR | 1 | hidden.js |
Yes — chevron-down from icon set |
| Disclosure ▶/▼ | ▶ | PSEUDO | 1 | coverage.css |
Yes — chevron-right/down from icon set |
render_html.py (same as current toolbar icons). No icon font, no sprite sheet, no external files — reports must be self-contained single-file HTML.