Skip to content

Feature/UI one prototype - #7

Closed
tylerlv3 wants to merge 3 commits into
mainfrom
feature/ui-one-prototype
Closed

Feature/UI one prototype#7
tylerlv3 wants to merge 3 commits into
mainfrom
feature/ui-one-prototype

Conversation

@tylerlv3

Copy link
Copy Markdown
Collaborator

Summary

Briefly explain what this PR does and why

Type

  • Feature
  • Fix
  • Docs
  • Chore

Testing

Steps or notes to verify behavior

Risk and rollout

Any risks plus rollback plan

Checklist

  • Issue linked if applicable
  • Added or updated docs
  • CI green
  • At least one reviewer not the author

Implemented a comprehensive HMI-style frontend interface for controlling
20 electrochromic panels (18 facade, 2 skylight) across two rooms.

Frontend Features:
- New HMI prototype UI accessible via /index-hmi.html
- Room grid layout with organized panel displays (3x3 grid for facade panels)
- Skylights displayed prominently at top, centered on own row
- Full panel control tiles with sliders, quick-set buttons, and apply controls
- Compact view when side panel is open for group/routine management
- Visual status indicators showing current tint levels with color coding
- Transition indicators for panels actively changing tint
- Manual mode as default control state with clear visual badges
- Control priority system (Manual > Group > Routine) with conflict handling
- Active controllers bar showing currently active groups/routines
- Side panel for creating groups (routines UI ready, backend pending)
- Toast notification system replacing blocking alerts
- Frontend API client with createGroup method (backend endpoint pending)

Control Management:
- Implemented controlManager utility for tracking panel control sources
- Visual indicators (badges and borders) for control state
- Automatic control release after transitions complete
- Conflict detection and user confirmation for overrides

UI/UX Improvements:
- HMI-inspired dark theme with blue accents
- Consistent styling matching industrial panel aesthetics
- Reduced overlay tint when side panel is open (15% opacity)
- Responsive layout with proper centering
- Cards sized appropriately for P10-P18 panel IDs without truncation
- Skylight cards appropriately sized in compact view

Mock Data & Testing:
- Complete mock API implementation for offline development
- Mock data includes all 20 panels with realistic initial states
- Mock group creation with validation and state persistence
@tylerlv3 tylerlv3 closed this Nov 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant