---
id: "readme-startup"
title: "🚀 Guide de démarrage de l'application Veza"
sidebar_label: "🚀 Guide de démarrage de l'application Veza"
---
> NOTE: Cette page reflète l'ÉTAT ACTUEL.

# 🚀 Guide de démarrage de l'application Veza

## 📋 Vue d'ensemble

L'application Veza est une plateforme complète composée de plusieurs services :

- **Backend API** (Go) - Port 8080
- **Frontend React** (Vite) - Port 5174
- **Stream Server** (Rust) - Port 8082
- **Chat Server** (Rust) - Port 8081
- **PostgreSQL** - Port 5432
- **Redis** - Port 6379
- **Grafana** (Monitoring) - Port 3000
- **Application Desktop** (Electron)

## 🎯 Démarrage rapide

### Mode développement (recommandé)

```bash
# Démarrer tous les services en mode développement
./start-veza.sh

# Pour arrêter tous les services
./stop-veza.sh
```

### Mode Docker (production)

```bash
# Démarrer tous les services en mode Docker
./start-veza-docker.sh

# Pour arrêter
docker-compose -f docker-compose.production.yml down
```

## 🌐 Accès aux services

Une fois démarrés, les services sont accessibles aux adresses suivantes :

| Service | URL | Description |
|---------|-----|-------------|
| **Frontend Web** | http://localhost:5174 | Interface utilisateur principale |
| **Backend API** | http://localhost:8080 | API REST et GraphQL |
| **Stream Server** | http://localhost:8082 | Service de streaming audio |
| **Grafana** | http://localhost:3000 | Monitoring et métriques |
| **PostgreSQL** | localhost:5432 | Base de données principale |
| **Redis** | localhost:6379 | Cache et sessions |

## 🖥️ Application Desktop

L'application desktop Electron est automatiquement démarrée avec le script `start-veza.sh`. Elle utilise les mêmes services backend que la version web.

## 🔧 Dépannage

### Problèmes courants

1. **Ports déjà utilisés**
   ```bash
   # Vérifier les ports utilisés
   netstat -tlnp | grep -E "(8080|5174|8082|5432|6379)"
   
   # Arrêter les processus conflictuels
   pkill -f "server\|npm\|vite"
   ```

2. **Base de données non accessible**
   ```bash
   # Redémarrer PostgreSQL
   docker-compose -f docker-compose.local.yml restart postgres
   
   # Vérifier la connexion
   docker exec veza-postgres-local psql -U veza_user -d veza_local -c "\l"
   ```

3. **Frontend ne se charge pas**
   ```bash
   # Redémarrer le frontend
   cd veza-frontend && npm run dev
   ```

### Logs des services

```bash
# Voir les logs du backend
cd veza-backend-api && ./server

# Voir les logs du frontend
cd veza-frontend && npm run dev

# Voir les logs Docker
docker-compose -f docker-compose.local.yml logs -f
```

## 📊 Monitoring

- **Grafana** : http://localhost:3000 (admin/admin)
- **Prometheus** : http://localhost:9090 (si configuré)

## 🛠️ Développement

### Structure des projets

```
veza-full-stack/
├── veza-backend-api/     # Backend Go
├── veza-frontend/        # Frontend React
├── veza-stream-server/   # Serveur de streaming Rust
├── veza-chat-server/     # Serveur de chat Rust
├── veza-desktop/         # Application desktop Electron
└── config/              # Configurations Docker
```

### Scripts utiles

- `start-veza.sh` - Démarrage en mode développement
- `stop-veza.sh` - Arrêt des services
- `start-veza-docker.sh` - Démarrage en mode Docker
- `docker-compose.production.yml` - Configuration Docker

## 🎉 Test de l'application

1. Ouvrez http://localhost:5174 dans votre navigateur
2. Testez les fonctionnalités de l'interface
3. Vérifiez les appels API via http://localhost:8080/api/health
4. Testez le streaming via http://localhost:8082

## 📝 Notes importantes

- Les services de base (PostgreSQL, Redis, Grafana) sont démarrés via Docker
- Les services applicatifs (backend, frontend, stream) sont démarrés localement en mode développement
- L'application desktop nécessite Node.js et npm installés
- Tous les services sont configurés pour fonctionner ensemble automatiquement

## 🆘 Support

En cas de problème :
1. Vérifiez que tous les ports sont disponibles
2. Assurez-vous que Docker est installé et en cours d'exécution
3. Vérifiez les logs des services
4. Redémarrez les services un par un si nécessaire 