6989a98d75
- Arkitektur: docs/auth/passwordless-architecture.md - Backend: iom/quixzoom-auth-service/ (FastAPI + Redis) - Webb: quixzoom-market-pages/se/login/ (QR-kod + polling) - App: iom/quixzoom-app/src/features/auth/ (push + deep links) Flöde: QR-kod → app-godkännande → webb-inloggad
2.8 KiB
2.8 KiB
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
cp .env.example .env
# Redigera .env med dina API-nycklar
2. Databas
# Skapa PostgreSQL-databas
createdb landvex
# Synkronisera modeller
npm run db:sync
3. Redis (för kö-system)
# Installera och starta Redis
redis-server
4. Starta applikationen
# Utveckling
npm run dev
# Produktion
npm start
5. Skapa admin-användare
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ällningGET /api/orders/:id- Hämta beställningGET /api/orders/track?email=- Spåra via e-postGET /api/orders- Lista alla (admin)PATCH /api/orders/:id/status- Uppdatera status (admin)
Rapporter
GET /api/reports/:id- Hämta rapportGET /api/reports/:id/html- Hämta HTML-versionGET /api/reports/order/:orderId- Hämta via orderGET /api/reports- Lista alla (admin)
Admin
POST /api/admin/login- InloggningGET /api/admin/stats- StatistikPOST /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
- Databas: Använd migrations istället för sync
- Säkerhet: Lägg till rate limiting, input-sanering
- Skalning: Kör fler worker-instanser
- Övervakning: Lägg till Prometheus/Grafana
- Backups: Automatiska databasbackups
- SSL: HTTPS i produktion
- CDN: För statiska filer
Licens
Proprietär - Landvex AB