Guide d'Installation d'AletWiki
Bienvenue dans le guide d'installation d'AletWiki ! Ce guide vous accompagnera pas à pas pour mettre en place votre environnement de développement.
Prérequis
Avant de commencer, assurez-vous d'avoir installé :
- Node.js 18.0 ou supérieur
- PostgreSQL 15.0 ou supérieur
- Git pour le contrôle de version
Vérification des versions
# Vérifier Node.js
node --version
# Devrait afficher v18.0.0 ou supérieur
# Vérifier npm
npm --version
# Devrait afficher 8.0.0 ou supérieur
# Vérifier PostgreSQL
psql --version
# Devrait afficher 15.0 ou supérieur
Installation
1. Clonage du repository
git clone https://github.com/AletWork/AletWiki.git
cd AletWiki
2. Installation des dépendances
npm install
3. Configuration de la base de données
Créez une base de données PostgreSQL et un utilisateur :
-- Créer la base de données
CREATE DATABASE aletwiki;
-- Créer un utilisateur
CREATE USER aletwiki_user WITH PASSWORD 'votre_mot_de_passe';
-- Donner les permissions
GRANT ALL PRIVILEGES ON DATABASE aletwiki TO aletwiki_user;
4. Configuration Supabase
- Créez un projet sur Supabase
- Récupérez l'URL et la clé anonyme
- Configurez les variables d'environnement
5. Variables d'environnement
Créez un fichier .env.local
à la racine du projet :
# Base de données Supabase
NEXT_PUBLIC_SUPABASE_URL=https://votre-projet.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=votre_clé_anonyme
SUPABASE_SERVICE_ROLE_KEY=votre_clé_service
# NextAuth.js
NEXTAUTH_URL=http://localhost:3000
NEXTAUTH_SECRET=votre_secret_nextauth
# OAuth (optionnel)
GOOGLE_CLIENT_ID=votre_client_id_google
GOOGLE_CLIENT_SECRET=votre_client_secret_google
6. Application des politiques RLS
Exécutez le script SQL des politiques de sécurité :
# Via l'interface Supabase ou psql
psql -h votre_host -U votre_user -d aletwiki -f policies.sql
7. Démarrage du serveur
npm run dev
Votre application sera accessible sur http://localhost:3000.
Structure du Projet
Après installation, votre projet aura cette structure :
aletwiki/
├── app/ # Routes Next.js
│ ├── (public)/ # Contenu public
│ ├── (authenticated)/ # Contenu authentifié
│ └── (admin)/ # Administration
├── content/ # Fichiers MDX
│ ├── public/ # Contenu accessible sans auth
│ └── private/ # Contenu réservé
├── src/
│ ├── components/ # Composants React
│ ├── hooks/ # Hooks personnalisés
│ └── lib/ # Utilitaires
└── docs/ # Documentation
Premiers Pas
Création d'un compte administrateur
- Accédez à l'application
- Cliquez sur "Se connecter"
- Utilisez OAuth ou créez un compte
- Un rôle 'learner' sera automatiquement assigné
Accès à l'administration
Pour obtenir les droits admin, contactez l'équipe ou modifiez manuellement les rôles en base de données.
Dépannage
Erreur de connexion à la base de données
Vérifiez :
- Que PostgreSQL est démarré
- Que les variables d'environnement sont correctes
- Que l'utilisateur a les bonnes permissions
Erreur lors du build
# Nettoyer le cache
rm -rf .next
npm run build
Problème avec les politiques RLS
Assurez-vous que le script policies.sql
a été exécuté correctement dans Supabase.
Prochaines Étapes
Maintenant que AletWiki est installé, vous pouvez :
Note : Ce guide est accessible publiquement. Pour accéder aux fonctionnalités avancées, créez un compte utilisateur.