HoffDesk Family Dashboard
iPad-optimized family dashboard for the HoffDesk ecosystem. Phase 6/7 Bridge implementation.
Features
- Today View: Current events, urgent items, weather, system health
- Week View: Weekly calendar overview, maintenance due
- Documents View: Recent document processing, quick actions
- Family View: Per-member filtered view with stats
Tech Stack
- Next.js 16 + React 19
- TypeScript
- Tailwind CSS v4
- WebSocket for real-time updates
- Mock API for development
Development
# Install dependencies
npm install
# Run with mock data (no backend needed)
npm run dev:mock
# Run with real API (requires backend)
npm run dev
# Build for production
npm run build
iPad Optimization
- Minimum tap target: 44pt
- Touch-first design (no hover states)
- 1024×768 minimum viewport
- Card-based layout
- Real-time updates via WebSocket or polling fallback
API Integration
The dashboard connects to Socrates' backend API:
GET /api/v1/briefing- Daily briefing dataGET /api/v1/events- Events listGET /api/v1/weather- Weather dataGET /api/v1/health- System healthGET /api/v1/maintenance- Maintenance itemsGET /api/v1/documents- Recent documentsWebSocket /ws/events- Real-time updates
Design Tokens
See shared/design-tokens/ipad-layout.json for layout constants.
Auth
- Session cookie-based authentication
- CSRF protection
- Family user roles: admin, parent, child, viewer
- Login redirects to
/family/login/
Project Structure
src/
app/ # Next.js app router
components/
ui/ # Reusable UI components
views/ # View-specific components (Today, Week, etc.)
hooks/ # Custom React hooks
lib/ # Utilities and API
mocks/ # Mock data for development
types/ # TypeScript type definitions