claw-code/.guardrails/examples/python/ui-dashboard
Claude 2d62b470f6 fix(tui): add guardrails as files instead of submodule
Embedded repo was committed as submodule (160000). Now includes all
guardrails files directly for full in-repo reference.

Authored by TheArchitectit
2026-06-11 18:29:45 -05:00
..
README.md fix(tui): add guardrails as files instead of submodule 2026-06-11 18:29:45 -05:00
dashboard.py fix(tui): add guardrails as files instead of submodule 2026-06-11 18:29:45 -05:00
websocket-streaming.py fix(tui): add guardrails as files instead of submodule 2026-06-11 18:29:45 -05:00

README.md

Python UI Dashboard - 2026 Best Practices

Stack: FastUI 0.6, Reflex 0.6.x, Streamlit 1.40, FastAPI, WebSockets Target: Real-time dashboards, data visualization, multiplayer monitoring Last Updated: 2026-03-14


2026 Best Practices

FastUI (FastAPI-based)

Pattern Description Use Case
Type-driven Pydantic v2 for schema validation Form validation
Component-based Reusable UI components Dashboard widgets
Async-first async def for all endpoints WebSocket streaming
TypeScript sync Shared types via API spec Client consistency

Reflex (React-based Python)

Component System → React-like declarative syntax
State Management → rx.State for reactive updates
Full-stack → Backend + frontend in single codebase

Streamlit 1.40 (2026)

Feature Description Benefit
Fragment Caching Memoize components Performance
Async Support Native async/await WebSocket integration
Custom Components Web component wrapping Extensibility
Multi-page Native page routing App architecture

Performance Targets

Metric Target Measurement
TTI <2.0s Lighthouse
WebSocket Latency <100ms ws benchmark
Memory <200MB memory_profiler
Throughput 100+ concurrent load test

Game Design Integration Patterns

Real-time Dashboard

WebSocket Streaming → Live game state updates
Delta Compression → Send only changes
Client Prediction → Optimistic UI updates

Multiplayer Monitoring

Pattern Description Implementation
Player Heatmap Density visualization Canvas rendering
Match Timeline Event sequence display Gantt-style chart
Lag Distribution Latency histogram Percentile display
Sync Status Server/client reconciliation Color indicators

Accessibility Compliance (WCAG 2.2 Level AA)

Requirement Implementation Verification
Keyboard Navigation Tab index, focus management Manual audit
Screen Reader Support aria-label, role attributes axe-core
Color Contrast 4.5:1 minimum Contrast checker
Focus Indicators Visible focus rings Keyboard testing
Reduced Motion CSS media query Device testing

Ethical Engagement Standards

No Dark Patterns

Forbidden Pattern Replacement
Data Hoarding Minimal data collection
Hidden Tracking Transparent analytics disclosure
Forced Continuity Easy session termination
Misleading Metrics Honest performance indicators
Fake Urgency No artificial timers

Transparency Requirements

- Display data retention policies
- Offer opt-out without penalty
- Clear WebSocket connection status
- Honest sync/error indicators
- No hidden telemetry

Code Examples

dashboard.py

FastUI dashboard with Pydantic v2 validation → See: dashboard.py

websocket-streaming.py

Real-time WebSocket streaming patterns → See: websocket-streaming.py


Testing Guidelines

Test Type Tool Target
Unit pytest Per-commit
Integration pytest-asyncio Per-PR
A11y axe-core (web) Per-component
Load pytest-benchmark Per-sprint
Security OWASP scan Per-release


Authored by: Claude Code (Anthropic) Document Owner: Project Maintainers Review Cycle: Per-sprint updates Last Review: 2026-03-14