# Landvex - AI-driven marknadsintelligens Ett komplett system för automatisk generering av marknadsintelligensrapporter. ## Funktioner - ✅ Produktinput-formulär - ✅ Datainsamling (Google Trends, Statista, quiXzoom, web scraping) - ✅ AI-analys (OpenAI GPT-4) - ✅ Rapportgenerering (Markdown/HTML med grafer) - ✅ Kundportal (beställning, status, rapportvisning) - ✅ Adminpanel (beställningar, statistik, rapporter) - ✅ E-postnotifieringar - ✅ Kö-system för asynkron bearbetning ## Snabbstart ### 1. Konfiguration ```bash cp .env.example .env # Redigera .env med dina API-nycklar ``` ### 2. Databas ```bash # Skapa PostgreSQL-databas createdb landvex # Synkronisera modeller npm run db:sync ``` ### 3. Redis (för kö-system) ```bash # Installera och starta Redis redis-server ``` ### 4. Starta applikationen ```bash # Utveckling npm run dev # Produktion npm start ``` ### 5. Skapa admin-användare ```bash curl -X POST http://localhost:3000/api/admin/users \ -H "Content-Type: application/json" \ -d '{"username":"admin","email":"admin@landvex.ai","password":"ditt-losenord","role":"admin"}' ``` ## API-endpoints ### Beställningar - `POST /api/orders` - Skapa ny beställning - `GET /api/orders/:id` - Hämta beställning - `GET /api/orders/track?email=` - Spåra via e-post - `GET /api/orders` - Lista alla (admin) - `PATCH /api/orders/:id/status` - Uppdatera status (admin) ### Rapporter - `GET /api/reports/:id` - Hämta rapport - `GET /api/reports/:id/html` - Hämta HTML-version - `GET /api/reports/order/:orderId` - Hämta via order - `GET /api/reports` - Lista alla (admin) ### Admin - `POST /api/admin/login` - Inloggning - `GET /api/admin/stats` - Statistik - `POST /api/admin/users` - Skapa användare ## Miljövariabler | Variabel | Beskrivning | |----------|-------------| | `DB_HOST` | PostgreSQL host | | `DB_PORT` | PostgreSQL port | | `DB_NAME` | Databasnamn | | `DB_USER` | Databasanvändare | | `DB_PASSWORD` | Databaslösenord | | `OPENAI_API_KEY` | OpenAI API-nyckel | | `JWT_SECRET` | JWT-hemlighet | | `SMTP_HOST` | SMTP-server | | `SMTP_USER` | E-postanvändare | | `SMTP_PASSWORD` | E-postlösenord | | `REDIS_URL` | Redis-anslutning | ## Arkitektur ``` Frontend (HTML/CSS/JS) ↓ Express API ↓ Bull Queue (Redis) ↓ Report Job Processor ↓ Data Collection → AI Analysis → Report Generation ↓ PostgreSQL (spara resultat) ↓ E-postnotifiering ``` ## Produktionsanpassningar 1. **Databas**: Använd migrations istället för sync 2. **Säkerhet**: Lägg till rate limiting, input-sanering 3. **Skalning**: Kör fler worker-instanser 4. **Övervakning**: Lägg till Prometheus/Grafana 5. **Backups**: Automatiska databasbackups 6. **SSL**: HTTPS i produktion 7. **CDN**: För statiska filer ## Licens Proprietär - Landvex AB