39 lines
921 B
Markdown
39 lines
921 B
Markdown
# 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)
|