# System Patterns ## Architecture - React-based frontend - TypeScript for type safety - Tailwind CSS for styling - Docker containerization - Portainer for deployment management ## Component Patterns 1. Minutes Component - Table-based display with sorting - Responsive design (desktop/mobile) - PDF viewer integration - State management with React hooks ## File Organization ``` client/ ├── public/ │ ├── minutes/ # PDF files │ └── ... ├── src/ │ ├── components/ # React components │ └── ... └── ... ``` ## Deployment Pattern 1. Code changes pushed to Gitea 2. Container rebuild triggered via Portainer 3. New version deployed automatically ## Key Technical Decisions - PDF viewing: - Desktop: In-page popup viewer - Mobile: Direct file download - Sorting: Client-side implementation - State: Local component state (useState)