Démarrage rapide
Créer un nouveau projet
Section intitulée « Créer un nouveau projet »pnpm dlx @rebasepro/cli init my-appCeci échafaude un projet avec trois packages :
| Dossier | Description |
|---|---|
frontend/ | SPA React — Vite + TypeScript avec l’interface d’administration Rebase |
backend/ | Serveur Node.js — Hono, PostgreSQL via Drizzle ORM, WebSocket |
config/ | Définitions de collections TypeScript partagées par les deux parties |
Prérequis
Section intitulée « Prérequis »- Node.js 18+
- PostgreSQL — installation locale, Docker, ou toute base de données gérée (Neon, Supabase, etc.)
- pnpm (recommandé) ou npm
Configurer votre environnement
Section intitulée « Configurer votre environnement »Après l’échafaudage, modifiez le fichier .env à la racine du projet :
# PostgreSQL connection stringDATABASE_URL=postgresql://username:password@localhost:5432/your_database
# JWT secret for authentication (generate a strong random string)JWT_SECRET=change-me-to-a-random-secret
# Frontend URL for CORSVITE_API_URL=http://localhost:3001
# Optional: Google OAuth client ID# VITE_GOOGLE_CLIENT_ID=your-google-client-idDémarrer les serveurs de développement
Section intitulée « Démarrer les serveurs de développement »pnpm devCeci démarre :
- Backend à
http://localhost:3001— API REST, authentification, stockage, WebSocket - Frontend à
http://localhost:5173— Panneau d’administration Rebase - Hot reload pour les deux — les changements prennent effet instantanément
Vous pouvez également les démarrer individuellement :
pnpm dev:backend # Backend onlypnpm dev:frontend # Frontend onlyIntrospection d’une Base de Données Existante (Optionnel)
Section intitulée « Introspection d’une Base de Données Existante (Optionnel) »Si vous vous connectez à une base de données existante avec des tables préexistantes, vous pouvez l’introspecter pour générer automatiquement vos fichiers de collection TypeScript :
pnpm rebase schema introspectCela analysera les tables, enums et relations de votre base de données et créera les fichiers de collection correspondants dans config/collections/.
Première connexion
Section intitulée « Première connexion »Lorsque vous ouvrez http://localhost:5173, vous verrez l’écran de connexion. Le premier utilisateur à s’inscrire devient automatiquement un administrateur — c’est le flux d’amorçage.
- Cliquez sur S’inscrire
- Entrez votre adresse e-mail et votre mot de passe
- Vous êtes connecté — avec un accès administrateur complet
Définir votre première collection
Section intitulée « Définir votre première collection »Ouvrez config/collections/ et créez un nouveau fichier :
import { EntityCollection } from "@rebasepro/types";
export const productsCollection: EntityCollection = { slug: "products", name: "Products", singularName: "Product", table: "products", properties: { name: { type: "string", name: "Name", validation: { required: true } }, price: { type: "number", name: "Price", validation: { required: true, min: 0 } }, description: { type: "string", name: "Description", multiline: true }, active: { type: "boolean", name: "Active", defaultValue: true }, created_at: { type: "date", name: "Created At", autoValue: "on_create" } }};Générer le schéma de la base de données
Section intitulée « Générer le schéma de la base de données »rebase schema generate # Generate Drizzle schema from your collectionsrebase db push # Push the schema to your databaseRedémarrez les serveurs de développement et votre nouvelle collection Produits apparaîtra dans la navigation.
Référence des commandes de base de données
Section intitulée « Référence des commandes de base de données »| Commande | Description |
|---|---|
rebase schema generate | Générer le schéma Drizzle à partir de vos collections TypeScript |
rebase schema introspect | Générer des collections TypeScript à partir d’une base de données existante |
rebase db push | Pousser les modifications de schéma directement dans la base de données (dev seulement) |
rebase db generate | Générer les fichiers de migration SQL |
rebase db migrate | Exécuter les migrations en attente |
Et ensuite ?
Section intitulée « Et ensuite ? »- Structure du projet — Comprendre le code généré
- Collections — Approfondir la définition du schéma
- Environnement et Configuration — Toutes les options de configuration
- Déploiement — Déployer en production