Schnellstart
Erstellen Sie ein neues Projekt
Abschnitt betitelt „Erstellen Sie ein neues Projekt“pnpm dlx @rebasepro/cli init my-appDies erstellt ein Projekt mit drei Paketen:
| Ordner | Beschreibung |
|---|---|
frontend/ | React SPA — Vite + TypeScript mit der Rebase Admin-Benutzeroberfläche |
backend/ | Node.js Server — Hono, PostgreSQL über Drizzle ORM, WebSocket |
config/ | TypeScript-Sammlungsdefinitionen, die von beiden Seiten geteilt werden |
Voraussetzungen
Abschnitt betitelt „Voraussetzungen“- Node.js 18+
- PostgreSQL — lokale Installation, Docker oder eine beliebige verwaltete Datenbank (Neon, Supabase usw.)
- pnpm (empfohlen) oder npm
Konfigurieren Sie Ihre Umgebung
Abschnitt betitelt „Konfigurieren Sie Ihre Umgebung“Nach der Generierung bearbeiten Sie die Datei .env im Projektstammverzeichnis:
# 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-idStarten Sie die Entwicklungs-Server
Abschnitt betitelt „Starten Sie die Entwicklungs-Server“pnpm devDies startet:
- Backend unter
http://localhost:3001— REST API, Authentifizierung, Speicher, WebSocket - Frontend unter
http://localhost:5173— Rebase Admin-Panel - Hot-Reload für beides — Änderungen werden sofort wirksam
Sie können sie auch einzeln starten:
pnpm dev:backend # Backend onlypnpm dev:frontend # Frontend onlyEine bestehende Datenbank introspektieren (Optional)
Abschnitt betitelt „Eine bestehende Datenbank introspektieren (Optional)“Wenn Sie eine Verbindung zu einer bestehenden Datenbank mit bereits vorhandenen Tabellen herstellen, können Sie diese introspektieren, um Ihre TypeScript-Sammlungsdateien automatisch zu generieren:
pnpm rebase schema introspectDies analysiert Ihre Datenbanktabellen, Enums und Beziehungen und schreibt die entsprechenden Sammlungsdateien in config/collections/.
Erster Login
Abschnitt betitelt „Erster Login“Wenn Sie http://localhost:5173 öffnen, sehen Sie den Anmeldebildschirm. Der erste Benutzer, der sich registriert, wird automatisch zum Administrator – dies ist der Bootstrap-Prozess.
- Klicken Sie auf Registrieren
- Geben Sie Ihre E-Mail-Adresse und Ihr Passwort ein
- Sie sind drin — mit vollem Administratorzugriff
Definieren Sie Ihre erste Sammlung
Abschnitt betitelt „Definieren Sie Ihre erste Sammlung“Öffnen Sie config/collections/ und erstellen Sie eine neue Datei:
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" } }};Datenbank-Schema generieren
Abschnitt betitelt „Datenbank-Schema generieren“rebase schema generate # Generate Drizzle schema from your collectionsrebase db push # Push the schema to your databaseStarten Sie die Entwicklungs-Server neu und Ihre neue Produkte-Sammlung erscheint in der Navigation.
Referenz der Datenbank-Befehle
Abschnitt betitelt „Referenz der Datenbank-Befehle“| Befehl | Beschreibung |
|---|---|
rebase schema generate | Drizzle-Schema aus Ihren TypeScript-Sammlungen generieren |
rebase schema introspect | TypeScript-Sammlungen aus einer bestehenden Datenbank generieren |
rebase db push | Schema-Änderungen direkt an die Datenbank übertragen (nur Entwicklung) |
rebase db generate | SQL-Migrationsdateien generieren |
rebase db migrate | Ausstehende Migrationen ausführen |
Was kommt als Nächstes
Abschnitt betitelt „Was kommt als Nächstes“- Projektstruktur — Verstehen Sie den generierten Code
- Sammlungen — Ausführlicher Einblick in die Schema-Definition
- Umgebung & Konfiguration — Alle Konfigurationsoptionen
- Bereitstellung — In Produktion bereitstellen