Update README and documentation; refactor frontend components for improved structure and resilience

This commit is contained in:
glenn schrooyen
2025-09-11 23:46:29 +02:00
parent 63b4bb487d
commit b9206de1a0
49 changed files with 27058 additions and 581 deletions

View File

@@ -18,7 +18,21 @@ labfusion/
│ │ ├── Dockerfile.dev # Development container
│ │ └── README.md # Service documentation
│ ├── service-adapters/ # Python FastAPI Service Adapters (Port 8000)
│ │ ├── main.py # FastAPI application
│ │ ├── main.py # FastAPI application (modular)
│ │ ├── models/ # Pydantic schemas
│ │ │ ├── __init__.py
│ │ │ └── schemas.py # Request/response models
│ │ ├── routes/ # API endpoints
│ │ │ ├── __init__.py
│ │ │ ├── general.py # Root, health, services
│ │ │ ├── home_assistant.py # HA integration
│ │ │ ├── frigate.py # Frigate integration
│ │ │ ├── immich.py # Immich integration
│ │ │ └── events.py # Event management
│ │ ├── services/ # Business logic
│ │ │ ├── __init__.py
│ │ │ ├── config.py # Service configurations
│ │ │ └── redis_client.py # Redis connection
│ │ ├── requirements.txt # Python dependencies
│ │ ├── Dockerfile # Production container
│ │ ├── Dockerfile.dev # Development container
@@ -44,17 +58,37 @@ labfusion/
├── frontend/ # React Frontend (Port 3000)
│ ├── src/
│ │ ├── components/ # React components
│ │ │ ├── Dashboard.js # Main dashboard
│ │ │ ├── common/ # Reusable UI components
│ │ │ │ ├── ErrorBoundary.js # Error boundary component
│ │ │ │ ├── LoadingSpinner.js # Loading state component
│ │ │ │ └── StatusIcon.js # Status icon component
│ │ │ ├── dashboard/ # Dashboard-specific components
│ │ │ │ ├── SystemStatsCards.js # System statistics cards
│ │ │ │ ├── ServiceStatusList.js # Service status list
│ │ │ │ └── RecentEventsList.js # Recent events list
│ │ │ ├── Dashboard.js # Main dashboard (refactored)
│ │ │ ├── SystemMetrics.js # Metrics visualization
│ │ │ ── Settings.js # Configuration UI
│ │ ├── App.js # Main app component
│ │ │ ── Settings.js # Configuration UI
│ │ │ ├── ServiceStatusBanner.js # Service status banner
│ │ │ └── OfflineMode.js # Offline mode component
│ │ ├── hooks/ # Custom React hooks
│ │ │ └── useServiceStatus.js # Service status and data hooks
│ │ ├── services/ # API and external services
│ │ │ └── api.js # Centralized API client
│ │ ├── utils/ # Utility functions
│ │ │ └── errorHandling.js # Error handling utilities
│ │ ├── constants/ # Configuration constants
│ │ │ └── index.js # UI constants, colors, messages
│ │ ├── App.js # Main app component (with ErrorBoundary)
│ │ ├── index.js # App entry point
│ │ └── index.css # Global styles
│ ├── public/
│ │ └── index.html # HTML template
│ ├── package.json # Node.js dependencies
│ ├── package.json # Node.js dependencies (with prop-types)
│ ├── Dockerfile # Production container
── Dockerfile.dev # Development container
── Dockerfile.dev # Development container
│ ├── CLEAN_CODE.md # Clean code documentation
│ └── RESILIENCE.md # Frontend resilience features
└── docs/ # Documentation
├── specs.md # Project specifications
├── structure.txt # Project structure