- ✅ Authentification utilisateur : Login/logout avec Supabase Auth
- ✅ Posts liés aux utilisateurs : Chaque post généré est automatiquement associé à son auteur
- ✅ Page historique : Consultation et gestion de tous les posts générés par utilisateur
- ✅ Base de données : PostgreSQL avec Prisma ORM et Supabase
- Un compte Supabase (gratuit) : https://supabase.com
- Les variables d'environnement configurées dans
.env
- Connectez-vous à Supabase
- Créez un nouveau projet
- Notez les informations suivantes :
- Project URL (NEXT_PUBLIC_SUPABASE_URL)
- Anon Key (NEXT_PUBLIC_SUPABASE_ANON_KEY)
- Service Role Key (SUPABASE_SERVICE_ROLE_KEY)
- Database URL (DATABASE_URL)
Copiez le fichier .env.example vers .env et remplissez les valeurs :
cp .env.example .env# OpenAI API Key
OPENAI_API_KEY=your_openai_api_key_here
# Supabase Configuration
NEXT_PUBLIC_SUPABASE_URL=https://xxxxx.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
SUPABASE_SERVICE_ROLE_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
# Database URL for Prisma
DATABASE_URL=postgresql://postgres:password@db.xxxxx.supabase.co:5432/postgres- Dans le dashboard Supabase, allez dans SQL Editor
- Copiez et exécutez le contenu du fichier
supabase/schema.sql
# Pousser le schéma vers la base de données
npx prisma db push
# Générer le client Prisma
npx prisma generate- Dans le dashboard Supabase, allez dans Authentication > Providers
- Assurez-vous que Email est activé
- Configurez les paramètres selon vos besoins :
- Confirmation email : activé/désactivé
- Email templates personnalisés
- URL de redirection :
http://localhost:3000/auth/callback(dev) et votre domaine de production
# Installer les dépendances
npm install
# Démarrer en mode développement
npm run dev- Accédez à la page d'accueil
- Créez un compte ou connectez-vous
- Un email de confirmation sera envoyé (si activé dans Supabase)
- Une fois connecté, téléchargez une image
- Sélectionnez un style d'écriture
- Générez votre post LinkedIn
- Le post est automatiquement sauvegardé dans votre historique
- Cliquez sur "Mes posts" dans la navigation
- Consultez tous vos posts générés
- Copiez ou supprimez des posts selon vos besoins
- Row Level Security (RLS) : Chaque utilisateur ne peut voir et modifier que ses propres données
- Authentification JWT : Tokens sécurisés gérés par Supabase
- Middleware Next.js : Protection des routes et refresh automatique des sessions
- Vérifiez que vous êtes bien connecté
- Vérifiez que les clés Supabase sont correctement configurées
- Vérifiez que la DATABASE_URL est correcte
- Assurez-vous que les migrations ont été exécutées
- Vérifiez que les tables existent dans Supabase
- Vérifiez les logs de la console pour des erreurs
- Assurez-vous que l'utilisateur existe dans la table
users
id: UUID (clé primaire)email: Email uniquename: Nom d'affichage (optionnel)avatar_url: URL de l'avatar (optionnel)created_at: Date de créationupdated_at: Date de mise à jour
id: UUID (clé primaire)content: Contenu du postimage_url: URL de l'image sourceplatform: Plateforme (toujours "linkedin")tone: Style d'écriture utilisétarget_role: Rôle cible (optionnel)user_id: ID de l'utilisateur (clé étrangère)created_at: Date de créationupdated_at: Date de mise à jour