docs(readme): update documentation for Convex backend
- commit
- 666dad1d4c0f5062ef770af8b618e3e8e659a058
- author
- bnema · · 2026-01-18 18:35 UTC
- parent
- d258a48
- signature
- GPG Verified
CD88F9E564E0102646FB6077A1A07C7C7C3E349D· arch-gpg Verified for the committer email
1 file · +20 -14
M README.md +20 -14
| @@ -7,6 +7,7 @@ Ce projet _sandbox_, à but non lucratif, recrée l'ambiance des salons de discu | |||
| 7 | 7 | - SvelteKit (version 5) | |
| 8 | 8 | - Node.js | |
| 9 | 9 | - TypeScript | |
| 10 | + | - Convex (base de données temps réel) | |
| 10 | 11 | - XP.css | |
| 11 | 12 | - Tailwind CSS | |
| 12 | 13 | ||
| @@ -48,33 +49,38 @@ Pour contribuer : | |||
| 48 | 49 | ||
| 49 | 50 | ## Base de données | |
| 50 | 51 | ||
| 51 | - | Si vous souhaitez pouvoir tester le chat en local, vous devez configurer une base de données. Le projet utilise Drizzle ORM et Turso https://turso.tech/ comme base de données. Je vous invite à en créer une pour vos tests en local et à regarder le fichier `.env.example`. | |
| 52 | + | Le projet utilise [Convex](https://convex.dev/) comme base de données temps réel. Convex gère automatiquement les mises à jour en temps réel des messages et de la liste des utilisateurs. | |
| 52 | 53 | ||
| 53 | - | Pour générer les schémas de la base de données, exécutez la commande suivante : | |
| 54 | + | ### Configuration locale | |
| 54 | 55 | ||
| 55 | - | ```bash | |
| 56 | - | npm run db:generate | |
| 57 | - | # ou | |
| 58 | - | pnpm db:generate | |
| 59 | - | ``` | |
| 56 | + | 1. Créez un compte sur [Convex](https://convex.dev/) et un nouveau projet | |
| 57 | + | 2. Copiez `.env.example` vers `.env.local` et remplissez les variables : | |
| 58 | + | - `PUBLIC_CONVEX_URL` : URL de votre déploiement Convex | |
| 59 | + | - `CONVEX_API_SECRET` : Clé secrète pour les appels serveur | |
| 60 | + | ||
| 61 | + | ### Lancer Convex en développement | |
| 60 | 62 | ||
| 61 | - | Pour pousser les schémas à la base de données, exécutez la commande suivante : | |
| 63 | + | Dans un terminal séparé, lancez le serveur Convex : | |
| 62 | 64 | ||
| 63 | 65 | ```bash | |
| 64 | - | npm run db:push | |
| 65 | - | # ou | |
| 66 | - | pnpm db:push | |
| 66 | + | npx convex dev | |
| 67 | 67 | ``` | |
| 68 | 68 | ||
| 69 | - | Vous pouvez avoir un aperçu du contenu de la base en utilisant : | |
| 69 | + | Cela synchronise automatiquement vos fonctions backend avec Convex et affiche les logs en temps réel. | |
| 70 | + | ||
| 71 | + | ### Dashboard Convex | |
| 72 | + | ||
| 73 | + | Vous pouvez visualiser et gérer vos données via le dashboard Convex : | |
| 70 | 74 | ||
| 71 | 75 | ```bash | |
| 72 | - | npx drizzle-kit studio | |
| 76 | + | npx convex dashboard | |
| 73 | 77 | ``` | |
| 74 | 78 | ||
| 75 | 79 | ## Documentation et Ressources | |
| 76 | 80 | ||
| 77 | - | Si vous n'avez jamais utilisé Svelte/Kit, référez-vous aux documentations officielles : | |
| 81 | + | Si vous n'avez jamais utilisé Svelte/Kit ou Convex, référez-vous aux documentations officielles : | |
| 78 | 82 | ||
| 79 | 83 | - [Documentation de Svelte](https://svelte.dev/docs/) | |
| 80 | 84 | - [Documentation de SvelteKit](https://svelte.dev/docs/kit/@sveltejs-kit) | |
| 85 | + | - [Documentation de Convex](https://docs.convex.dev/) | |
| 86 | + | - [Convex + Svelte](https://docs.convex.dev/client/svelte) | |
| @@ -7,6 +7,7 @@ Ce projet _sandbox_, à but non lucratif, recrée l'ambiance des salons de discu | |||||
| 7 | - SvelteKit (version 5) | 7 | - SvelteKit (version 5) | ||
| 8 | - Node.js | 8 | - Node.js | ||
| 9 | - TypeScript | 9 | - TypeScript | ||
| 10 | + | - Convex (base de données temps réel) | |||
| 10 | - XP.css | 11 | - XP.css | ||
| 11 | - Tailwind CSS | 12 | - Tailwind CSS | ||
| 12 | 13 | ||||
| @@ -48,33 +49,38 @@ Pour contribuer : | |||||
| 48 | 49 | ||||
| 49 | ## Base de données | 50 | ## Base de données | ||
| 50 | 51 | ||||
| 51 | - | Si vous souhaitez pouvoir tester le chat en local, vous devez configurer une base de données. Le projet utilise Drizzle ORM et Turso https://turso.tech/ comme base de données. Je vous invite à en créer une pour vos tests en local et à regarder le fichier `.env.example`. | 52 | + | Le projet utilise [Convex](https://convex.dev/) comme base de données temps réel. Convex gère automatiquement les mises à jour en temps réel des messages et de la liste des utilisateurs. |
| 52 | 53 | ||||
| 53 | - | Pour générer les schémas de la base de données, exécutez la commande suivante : | 54 | + | ### Configuration locale |
| 54 | 55 | ||||
| 55 | - | ```bash | 56 | + | 1. Créez un compte sur [Convex](https://convex.dev/) et un nouveau projet |
| 56 | - | npm run db:generate | 57 | + | 2. Copiez `.env.example` vers `.env.local` et remplissez les variables : |
| 57 | - | # ou | 58 | + | - `PUBLIC_CONVEX_URL` : URL de votre déploiement Convex |
| 58 | - | pnpm db:generate | 59 | + | - `CONVEX_API_SECRET` : Clé secrète pour les appels serveur |
| 59 | - | ``` | 60 | + | |
| 61 | + | ### Lancer Convex en développement | |||
| 60 | 62 | ||||
| 61 | - | Pour pousser les schémas à la base de données, exécutez la commande suivante : | 63 | + | Dans un terminal séparé, lancez le serveur Convex : |
| 62 | 64 | ||||
| 63 | ```bash | 65 | ```bash | ||
| 64 | - | npm run db:push | 66 | + | npx convex dev |
| 65 | - | # ou | |||
| 66 | - | pnpm db:push | |||
| 67 | ``` | 67 | ``` | ||
| 68 | 68 | ||||
| 69 | - | Vous pouvez avoir un aperçu du contenu de la base en utilisant : | 69 | + | Cela synchronise automatiquement vos fonctions backend avec Convex et affiche les logs en temps réel. |
| 70 | + | ||||
| 71 | + | ### Dashboard Convex | |||
| 72 | + | ||||
| 73 | + | Vous pouvez visualiser et gérer vos données via le dashboard Convex : | |||
| 70 | 74 | ||||
| 71 | ```bash | 75 | ```bash | ||
| 72 | - | npx drizzle-kit studio | 76 | + | npx convex dashboard |
| 73 | ``` | 77 | ``` | ||
| 74 | 78 | ||||
| 75 | ## Documentation et Ressources | 79 | ## Documentation et Ressources | ||
| 76 | 80 | ||||
| 77 | - | Si vous n'avez jamais utilisé Svelte/Kit, référez-vous aux documentations officielles : | 81 | + | Si vous n'avez jamais utilisé Svelte/Kit ou Convex, référez-vous aux documentations officielles : |
| 78 | 82 | ||||
| 79 | - [Documentation de Svelte](https://svelte.dev/docs/) | 83 | - [Documentation de Svelte](https://svelte.dev/docs/) | ||
| 80 | - [Documentation de SvelteKit](https://svelte.dev/docs/kit/@sveltejs-kit) | 84 | - [Documentation de SvelteKit](https://svelte.dev/docs/kit/@sveltejs-kit) | ||
| 85 | + | - [Documentation de Convex](https://docs.convex.dev/) | |||
| 86 | + | - [Convex + Svelte](https://docs.convex.dev/client/svelte) | |||