Files
tilbudgivern/docs/README.md
T
Claude ceaa6039fa docs: Update README with current architecture and tech stack
- Update tech stack from PostgreSQL to MariaDB/MySQL
- Update port from 3000/3001 to unified server port 4032
- Add Smart Packages system (15 carpenter packages)
- Add 7 roof types documentation
- Add Ordrestyring GraphQL integration info
- Update project structure to reflect current state
- Add comprehensive API endpoints documentation
- Update docs/README.md with documentation index and architecture diagram
2026-01-25 08:46:36 +00:00

145 lines
6.8 KiB
Markdown

# Tilbudgivern Dokumentation
Velkommen til Tilbudgivern dokumentationen. Her finder du detaljerede guides til alle aspekter af systemet.
## Oversigt
Tilbudgivern er en AI-drevet tilbudsberegner for tømrerfaget med:
- 40+ backend services
- 57+ frontend komponenter
- 15 Smart Pakker til tagarbejde
- 7 understøttede tagtyper
- Ordrestyring GraphQL integration
## Dokumentationsstruktur
### API Dokumentation (`/api/`)
| Dokument | Beskrivelse |
|----------|-------------|
| [ORDRESTYRING_API_INVENTORY](api/ORDRESTYRING_API_INVENTORY.md) | Komplet Ordrestyring API reference |
| [ORDRESTYRING_API_STATUS_OVERSIGT](api/ORDRESTYRING_API_STATUS_OVERSIGT.md) | Status på API integrationer |
| [CUSTOMER_SEARCH_INTEGRATION](api/CUSTOMER_SEARCH_INTEGRATION.md) | Kundesøgning integration |
| [CASE_ANALYTICS_SYSTEM_DOCUMENTATION](api/CASE_ANALYTICS_SYSTEM_DOCUMENTATION.md) | Sags-analytics system |
| [BYGMA_AUTOMATION_README](api/BYGMA_AUTOMATION_README.md) | Bygma automatisering |
### Feature Dokumentation (`/features/`)
| Dokument | Beskrivelse |
|----------|-------------|
| [SMART_PACKAGES_COMPLETE_CATALOG](features/SMART_PACKAGES_COMPLETE_CATALOG.md) | Komplet Smart Pakke katalog |
| [TOMRER_SMART_PACKAGES_GUIDE](features/TOMRER_SMART_PACKAGES_GUIDE.md) | Tømrer smart pakke guide |
| [BYGMA_IMPORT_FEATURE](features/BYGMA_IMPORT_FEATURE.md) | Bygma import funktionalitet |
| [ORDRESTYRING_GRAPHQL_INTEGRATION](features/ORDRESTYRING_GRAPHQL_INTEGRATION.md) | GraphQL integration |
| [INTELLIGENT_TASKS_FEATURE](features/INTELLIGENT_TASKS_FEATURE.md) | Intelligente opgaver |
| [MARKUP_SLIDER_SYSTEM](features/MARKUP_SLIDER_SYSTEM.md) | Avance slider system |
| [FEATURE_ROADMAP](features/FEATURE_ROADMAP.md) | Feature roadmap |
### Deployment (`/deployment/`)
| Dokument | Beskrivelse |
|----------|-------------|
| [DEPLOYMENT](deployment/DEPLOYMENT.md) | Deployment guide |
| [PM2_GUIDE](deployment/PM2_GUIDE.md) | PM2 process manager |
| [DEPLOYMENT-PIPELINE](deployment/DEPLOYMENT-PIPELINE.md) | CI/CD pipeline |
| [DNS_MIGRATION_GUIDE](deployment/DNS_MIGRATION_GUIDE.md) | DNS migration |
### Guides (`/guides/`)
| Dokument | Beskrivelse |
|----------|-------------|
| [KOMPLET_ORDRESTYRING_SYSTEM_OVERSIGT](guides/KOMPLET_ORDRESTYRING_SYSTEM_OVERSIGT.md) | Komplet Ordrestyring oversigt |
| [KOMPLET_TILBUDSBEREGNING_LØSNING](guides/KOMPLET_TILBUDSBEREGNING_LØSNING.md) | Tilbudsberegning løsning |
| [AI_TILBUDS_PROMPT_GUIDE](guides/AI_TILBUDS_PROMPT_GUIDE.md) | AI prompt guide |
| [TAG_OPGAVE_DATABASE](guides/TAG_OPGAVE_DATABASE.md) | Tag opgave database |
| [TOMMER_QUICK_REFERENCE](guides/TOMMER_QUICK_REFERENCE.md) | Tømrer quick reference |
### System Dokumentation (root)
| Dokument | Beskrivelse |
|----------|-------------|
| [LOGGING_SYSTEM](LOGGING_SYSTEM.md) | Struktureret logging system |
| [PORT_MANAGEMENT](PORT_MANAGEMENT.md) | Port håndtering |
| [DATABASE_BACKUP_SETUP](DATABASE_BACKUP_SETUP.md) | Database backup |
| [ROOF_TYPES_IMPLEMENTATION](ROOF_TYPES_IMPLEMENTATION.md) | 7 tagtype implementationer |
| [OPENAI_COSTS_API](OPENAI_COSTS_API.md) | OpenAI omkostnings-API |
### Test Dokumentation
| Dokument | Beskrivelse |
|----------|-------------|
| [UI_TESTING_SETUP](UI_TESTING_SETUP.md) | UI test opsætning |
| [SVG_TESTING_GUIDE](SVG_TESTING_GUIDE.md) | SVG test guide |
## Quick Links
### Primære Systemer
- **Unified Server**: `backend/unified-server.js` (port 4032)
- **Smart Pakker**: 15 forudkonfigurerede tømrerpakker
- **Ordrestyring**: GraphQL integration til ordre/kundestyring
- **OpenAI**: GPT-4 tilbudsgenerering ($9/måned budget)
### Teknologi Stack
| Komponent | Teknologi |
|-----------|-----------|
| Frontend | React 18, Material-UI 5 |
| Backend | Node.js/Express |
| Database | MariaDB/MySQL |
| Real-time | Socket.IO |
| PDF | Puppeteer |
| Test | Playwright, Jest, Selenium |
### Vigtige Kommandoer
```bash
# Development
npm run dev
# Production
pm2 restart tilbudgivern-unified
pm2 logs tilbudgivern-unified
# Test
npm run test:pw # Playwright E2E
npm run test:pw:local # Lokal test
cd backend && npm test # Unit tests
```
## Arkitektur Oversigt
```
┌─────────────────────────────────────────────────────────┐
│ Frontend (React 18) │
│ Material-UI + Socket.IO Client │
└─────────────────────────┬───────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────┐
│ Unified Server (Port 4032) │
│ backend/unified-server.js │
├─────────────────────────────────────────────────────────┤
│ Routes │ Services (40+) │ Middleware │
│ ──────── │ ─────────────── │ ────────── │
│ /api/* │ openaiService │ auth │
│ │ smartPackage... │ correlationId │
│ │ ordrestyring... │ errorHandler │
│ │ pdfGeneration │ requestLogger │
└─────────────────────────┬───────────────────────────────┘
│
┌───────────────┼───────────────┐
▼ ▼ ▼
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ MariaDB │ │ OpenAI │ │ Ordrestyring│
│ Database │ │ GPT-4 API │ │ GraphQL API │
└─────────────┘ └─────────────┘ └─────────────┘
```
## Database Tabeller
| Kategori | Tabeller |
|----------|----------|
| Tilbud | `project_quotes`, `quotes`, `quote_feedback` |
| Projekter | `customer_projects`, `projects` |
| Materialer | `materials`, `material_prices`, `project_materials` |
| Arbejde | `labor_tasks`, `labor_prices`, `project_labor` |
| Pakker | `material_packages`, `smart_package_tasks`, `smart_package_materials` |
| Geometri | `roof_geometry` |
| System | `system_logs`, `request_logs`, `system_settings` |
## Kontakt
Ved spørgsmål, opret et issue i GitHub repository.