You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Improve documentation discovery with categorisation and filtering (#242)
* Improve documentation discovery with visual categorisation and filtering
Added icons, badges, and client-side filtering to documentation index pages
to help visitors quickly find relevant guides as the guide count grows.
- Filter buttons (All, Proxy, Filters, Kubernetes, Developer) with counts
- Category icons in card headers using Bootstrap Icons (cpu, puzzle, boxes, code-slash, shield-lock)
- Visible tag badges at bottom of cards
- Subtle category-specific border colours on cards
- Vanilla JavaScript for client-side filtering with progressive enhancement
- Cards reflow properly when filtered (no gaps in grid layout)
Added two new filter categories to better organise documentation:
- Security: for encryption, authentication, and authorisation guides
- Governance: for compliance and validation guides
Changes:
- Added 'security' tag to: Proxy guide, Record Encryption quickstart/guide,
OAuth Bearer Validation, SASL Inspection, and Authorization guides
- Added 'governance' tag to: Record Validation Guide
- Removed overly-specific 'record-encryption' and 'encryption-at-rest' tags
- Added Security and Governance filter buttons with shield-lock and
check-square-fill icons respectively
- Updated icon mapping and CSS border styles for new categories
- Applied changes to versions 0.16.0 through 0.19.0
Assisted-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: PaulRMellor <47596553+PaulRMellor@users.noreply.github.com>
Signed-off-by: Tom Bentley <tbentley@redhat.com>
Copy file name to clipboardExpand all lines: CLAUDE.md
+48Lines changed: 48 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -20,3 +20,51 @@ Instead, issues for the website are held in the main Kroxylicious repo `https://
20
20
So if you need to interact with website issues you can use the `-R kroxylicious/kroxylicious` option, for example: `gh issue list -R kroxylicious/kroxylicious`.
21
21
22
22
When making commits, use the `Assisted-by:` trailer to attribute changes to AI tooling, rather than `Coauthored-by:`.
23
+
24
+
## Documentation Filtering System
25
+
26
+
The documentation index pages (`/documentation/` and `/documentation/{version}/`) use client-side filtering to help visitors find relevant guides.
27
+
28
+
### Structure
29
+
30
+
1.**Metadata**: Each version has a YAML file in `_data/documentation/` (e.g., `0_19_0.yaml`) containing guide metadata:
31
+
-`title`, `description`, `path`: Basic guide information
32
+
-`tags`: Array of category tags (e.g., `[filter, security]`)
33
+
-`rank`: String to control sort order (e.g., '000', '010')
-**kubernetes**: Kubernetes operator and deployment
54
+
-**developer**: Development tools, guides, and API documentation
55
+
-**security**: Security features (encryption, authentication, authorization)
56
+
-**governance**: Compliance and validation
57
+
58
+
### Adding New Categories
59
+
60
+
To add a new filter category:
61
+
62
+
1. Update YAML files in `_data/documentation/` for relevant versions
63
+
2. Add filter button in `_layouts/released-documentation.html` with Bootstrap Icon
64
+
3. Add icon mapping for card headers (same file)
65
+
4. Add category border style in `_sass/kroxylicious.scss`
66
+
5. No JavaScript changes needed (handles tags dynamically)
67
+
68
+
### Version Scope Convention
69
+
70
+
When updating documentation tags, typically update only recent versions (e.g., 0.16.0+) rather than all historical versions, to balance consistency with maintenance effort.
0 commit comments