Files
boc/landvex/README.md
T

127 lines
2.8 KiB
Markdown
Raw Normal View History

# 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