OpportunitiesEntities
Docs
    Ring Platform

    Dezentralisierte selbstbauende Zukunft

    Anmelden
    Entities
    Opportunities
    Store
    Docs
    Plattformkonzepte
    RING ÖkonomieSonoratek LLCGlobaler ImpactKI trifft Web3
    Loslegen
    SchnellstartKalkulatorRoadmap
    Datenschutz|Kontakt
    v1.104.26|Sonoratek LLC

    Documentation

    Konzepte, Nutzen und typische Clone-Szenarien — weniger Code.

    Erste Schritte
    Voraussetzungen
    Installation
    Validierung des ersten Erfolgs
    Nächste Schritte
    Funktionen
    Mitglieder-Blogs
    Anpassung
    Ringization playbook
    Deployment
    Selbst gehostetes Deployment
    Architektur
    News-Kingdom-Architektur
    Entwicklung
    OSS und Enterprise

    Schnelleinstieg (CTOs · Auditoren · Agenten)

    Willkommen — Mission & Zielgruppen
    Schnellreferenz
    Erste Schritte
    Architektur & Auth.js
    Backend-Modi & Datenbanken (DB_BACKEND_MODE)
    Self-hosted
    Ring MCP Tools
    Ring MCP Server
    Token economics
    Token launch jurisdictions
    Deploy (Docker · k8s)
    Sicherheit & Compliance
    ringdom.org — LegioX-Homebase
    Quellcode — MIT-Lizenz (GitHub)

    Documentation

    Konzepte, Nutzen und typische Clone-Szenarien — weniger Code.

    Erste Schritte
    Voraussetzungen
    Installation
    Validierung des ersten Erfolgs
    Nächste Schritte
    Funktionen
    Mitglieder-Blogs
    Anpassung
    Ringization playbook
    Deployment
    Selbst gehostetes Deployment
    Architektur
    News-Kingdom-Architektur
    Entwicklung
    OSS und Enterprise

    Schnelleinstieg (CTOs · Auditoren · Agenten)

    Willkommen — Mission & Zielgruppen
    Schnellreferenz
    Erste Schritte
    Architektur & Auth.js
    Backend-Modi & Datenbanken (DB_BACKEND_MODE)
    Self-hosted
    Ring MCP Tools
    Ring MCP Server
    Token economics
    Token launch jurisdictions
    Deploy (Docker · k8s)
    Sicherheit & Compliance
    ringdom.org — LegioX-Homebase
    Quellcode — MIT-Lizenz (GitHub)

    Documentation

    Konzepte, Nutzen und typische Clone-Szenarien — weniger Code.

    Erste Schritte
    Voraussetzungen
    Installation
    Validierung des ersten Erfolgs
    Nächste Schritte
    Funktionen
    Mitglieder-Blogs
    Anpassung
    Ringization playbook
    Deployment
    Selbst gehostetes Deployment
    Architektur
    News-Kingdom-Architektur
    Entwicklung
    OSS und Enterprise

    Schnelleinstieg (CTOs · Auditoren · Agenten)

    Willkommen — Mission & Zielgruppen
    Schnellreferenz
    Erste Schritte
    Architektur & Auth.js
    Backend-Modi & Datenbanken (DB_BACKEND_MODE)
    Self-hosted
    Ring MCP Tools
    Ring MCP Server
    Token economics
    Token launch jurisdictions
    Deploy (Docker · k8s)
    Sicherheit & Compliance
    ringdom.org — LegioX-Homebase
    Quellcode — MIT-Lizenz (GitHub)
    Ring Logo

    Loading documentation...

    Preparing Ring content

    Ring Logo

    Loading documentation...

    Preparing Ring content

    Ring Logo

    Loading documentation...

    Preparing Ring content

    Installation

    Nutze die Tabs Gründer / Entwickler in der Seitenleiste, um diese Seite zu filtern. Erledige zuerst die Voraussetzungen. Diese Anleitung entspricht dem Open-Source-Repo (connectplatform/ring) und dem Standard PostgreSQL als Primärdatenbank (DB_BACKEND_MODE=k8s-postgres-fcm).

    Installiere Ring für die lokale Entwicklung auf deinem Rechner. Final-Split: Die Next.js-App liegt unter web/. Das install.sh im Repo-Root delegiert an web/, oder du führst ./install.sh direkt in ring/web aus.

    WegAm besten, wennErgebnis
    Empfohlen: install.shErster Klon, White-Label-GerüstKopiert env.local.template → .env.local, legt ring-config.json an, falls es fehlt, erzeugt AUTH_SECRET und führt npm install aus
    ManuellDu verwaltest Env und Konfiguration bereitsDieselben Dateien von Hand; jede Kopie und jedes Secret liegt bei dir
    Zeitbudget

    Vollständige Installation mit Postgres als Primärdatenbank (beim ersten Mal): etwa 45–90 Minuten. ./install.sh --quick mit einer vorhandenen PostgreSQL-Instanz geht meist schneller. Schema und einen OAuth-Anbieter musst du trotzdem anwenden, bevor die Anmeldung sinnvoll funktioniert.

    Was du installierst

    KomponenteGeprüfter Einstieg
    FrameworkNext.js 16 App Router + React 19
    AuthentifizierungAuth.js v5 (auth.ts, AUTH_SECRET, OAuth-Anbieter)
    Standard-DatenebenePostgreSQL über DB_BACKEND_MODE=k8s-postgres-fcm (verpflichtendes Env, kein stiller Standardwert)
    EntwicklungsserverEigener server.ts: Next.js + nativer WebSocket-Tunnel (/api/tunnel/ws) beim Self-Hosting
    White-Label-Konfigurationring-config.json (Layer1 liefert eventuell schon Community-Standardwerte; der Installer legt die Datei nur aus der Vorlage an, wenn sie fehlt)
    Installerinstall.sh v2.2.0 (SCRIPT_VERSION), enthält
    Ablauf der Installation

    Warum das für deinen Klon wichtig ist

    Du setzt einen Entwicklungsklon auf, damit Stakeholder Branding, Authentifizierung und die zentralen Marketplace-Abläufe durchklicken können, bevor es ein Produktions-Hosting gibt.

    Voraussetzungen

    Node 20+, Git, Postgres, Ports. Vor dem Klonen prüfen

    Datenbankmigrationen

    data/schema.sql und die Reihenfolge der Kingdom-Migrationen anwenden

    Auswahl des Datenbank-Backends

    k8s-postgres-fcm oder supabase-fcm oder firebase-full

    Empfohlener Weg: install.sh

    install.sh v2.2.0 legt Env, optionales ring-config.json, Secrets und Abhängigkeiten an. Für einen sauberen ersten Klon ist das der bevorzugte Weg.

    Voraussetzungen

    • Node.js 20+ (der Installer bricht bei älteren Hauptversionen ab)
    • Git und später PostgreSQL 14+ (empfohlen: 16 mit Docker / 18 mit Homebrew)
    • Aus einem OSS-Checkout: Repo-Root oder web/ (Final-Split)

    Schritte

    Häufige Fragen

    Auswirkungen

    Funktioniert mein Klon ohne Firebase?

    Ja für Browsen + Auth.js + CRUD in Postgres, wenn DB_BACKEND_MODE=k8s-postgres-fcm gesetzt ist. Client- und Admin-Schlüssel von Firebase werden für FCM-Push gebraucht, nicht für das erste Laden der Startseite.

    Brauche ich am ersten Tag Zugangsdaten für Zahlungen?

    Nein. WayForPay / Stripe kommen später: nach dem Ersten Erfolg und vor Checkout-Demos.

    Migration

    Nur das Schema oder alle Kingdom-Migrationen?

    Frische Installationen: Wende data/schema.sql an und danach die Inkremente für News/Zahlungen/E-Mail, wie unter Migrationen beschrieben. Wende das veraltete 001_email_crm_schema.sql nicht an.

    Ringdom-Monorepo oder eigenständiges Docker?

    Gleicher Datenbankname der App (ring_platform) und gleicher DB_*-Vertrag. Das Compose des Monorepos nutzt das Volume ringdom_postgres_data und Init-Skripte unter infrastructure/postgres/init/.

    Betrieb

    Port 3000 ist schon belegt?

    lsof -ti:3000 | xargs kill oder PORT=3001 npm run dev.

    Die Google-Anmeldung schlägt fehl?

    Prüfe AUTH_GOOGLE_*, die Weiterleitungs-URI http://localhost:3000/api/auth/callback/google und ein nicht leeres AUTH_SECRET.

    Tunnel-Fehler in der Konsole?

    Prüfe RING_DEPLOY_TARGET=self-hosted (und das öffentliche Gegenstück) für lokales WSS. Auf Vercel nutzt du vercel / nur SSE.

    Mehr: Fehlerbehebung.

    Verwandte Dokumentation

    Related documentation

    Prerequisites

    Voraussetzung: Node, Postgres und Ports vor dem Klonen prüfen.

    Database Migrations

    Nächster Schritt: data/schema.sql und die Reihenfolge der Kingdom-Migrationen nach dem Env-Gerüst anwenden.

    First Success Validation

    Nächster Schritt: Smoke-Test für Health, Authentifizierung und CRUD, sobald npm run dev läuft.

    Database Backend Selection

    Vertiefung: zwischen k8s-postgres-fcm, supabase-fcm und firebase-full wählen.

    1. Docs
    2. /Erste Schritte
    3. /Installation

    Aktualisiert 14. Okt. 20267 Min. Anhören

    Installation

    Nutze die Tabs Gründer / Entwickler in der Seitenleiste, um diese Seite zu filtern. Erledige zuerst die Voraussetzungen. Diese Anleitung entspricht dem Open-Source-Repo (connectplatform/ring) und dem Standard PostgreSQL als Primärdatenbank (DB_BACKEND_MODE=k8s-postgres-fcm).

    Installiere Ring für die lokale Entwicklung auf deinem Rechner. Final-Split: Die Next.js-App liegt unter web/. Das install.sh im Repo-Root delegiert an web/, oder du führst ./install.sh direkt in ring/web aus.

    WegAm besten, wennErgebnis
    Empfohlen: install.shErster Klon, White-Label-GerüstKopiert env.local.template → .env.local, legt ring-config.json an, falls es fehlt, erzeugt AUTH_SECRET und führt npm install aus
    ManuellDu verwaltest Env und Konfiguration bereitsDieselben Dateien von Hand; jede Kopie und jedes Secret liegt bei dir
    Zeitbudget

    Vollständige Installation mit Postgres als Primärdatenbank (beim ersten Mal): etwa 45–90 Minuten. ./install.sh --quick mit einer vorhandenen PostgreSQL-Instanz geht meist schneller. Schema und einen OAuth-Anbieter musst du trotzdem anwenden, bevor die Anmeldung sinnvoll funktioniert.

    Was du installierst

    KomponenteGeprüfter Einstieg
    FrameworkNext.js 16 App Router + React 19
    AuthentifizierungAuth.js v5 (auth.ts, AUTH_SECRET, OAuth-Anbieter)
    Standard-DatenebenePostgreSQL über DB_BACKEND_MODE=k8s-postgres-fcm (verpflichtendes Env, kein stiller Standardwert)
    EntwicklungsserverEigener server.ts: Next.js + nativer WebSocket-Tunnel (/api/tunnel/ws) beim Self-Hosting
    White-Label-Konfigurationring-config.json (Layer1 liefert eventuell schon Community-Standardwerte; der Installer legt die Datei nur aus der Vorlage an, wenn sie fehlt)
    Installerinstall.sh v2.2.0 (SCRIPT_VERSION), enthält
    Ablauf der Installation

    Warum das für deinen Klon wichtig ist

    Du setzt einen Entwicklungsklon auf, damit Stakeholder Branding, Authentifizierung und die zentralen Marketplace-Abläufe durchklicken können, bevor es ein Produktions-Hosting gibt.

    Voraussetzungen

    Node 20+, Git, Postgres, Ports. Vor dem Klonen prüfen

    Datenbankmigrationen

    data/schema.sql und die Reihenfolge der Kingdom-Migrationen anwenden

    Auswahl des Datenbank-Backends

    k8s-postgres-fcm oder supabase-fcm oder firebase-full

    Empfohlener Weg: install.sh

    install.sh v2.2.0 legt Env, optionales ring-config.json, Secrets und Abhängigkeiten an. Für einen sauberen ersten Klon ist das der bevorzugte Weg.

    Voraussetzungen

    • Node.js 20+ (der Installer bricht bei älteren Hauptversionen ab)
    • Git und später PostgreSQL 14+ (empfohlen: 16 mit Docker / 18 mit Homebrew)
    • Aus einem OSS-Checkout: Repo-Root oder web/ (Final-Split)

    Schritte

    Häufige Fragen

    Auswirkungen

    Funktioniert mein Klon ohne Firebase?

    Ja für Browsen + Auth.js + CRUD in Postgres, wenn DB_BACKEND_MODE=k8s-postgres-fcm gesetzt ist. Client- und Admin-Schlüssel von Firebase werden für FCM-Push gebraucht, nicht für das erste Laden der Startseite.

    Brauche ich am ersten Tag Zugangsdaten für Zahlungen?

    Nein. WayForPay / Stripe kommen später: nach dem Ersten Erfolg und vor Checkout-Demos.

    Migration

    Nur das Schema oder alle Kingdom-Migrationen?

    Frische Installationen: Wende data/schema.sql an und danach die Inkremente für News/Zahlungen/E-Mail, wie unter Migrationen beschrieben. Wende das veraltete 001_email_crm_schema.sql nicht an.

    Ringdom-Monorepo oder eigenständiges Docker?

    Gleicher Datenbankname der App (ring_platform) und gleicher DB_*-Vertrag. Das Compose des Monorepos nutzt das Volume ringdom_postgres_data und Init-Skripte unter infrastructure/postgres/init/.

    Betrieb

    Port 3000 ist schon belegt?

    lsof -ti:3000 | xargs kill oder PORT=3001 npm run dev.

    Die Google-Anmeldung schlägt fehl?

    Prüfe AUTH_GOOGLE_*, die Weiterleitungs-URI http://localhost:3000/api/auth/callback/google und ein nicht leeres AUTH_SECRET.

    Tunnel-Fehler in der Konsole?

    Prüfe RING_DEPLOY_TARGET=self-hosted (und das öffentliche Gegenstück) für lokales WSS. Auf Vercel nutzt du vercel / nur SSE.

    Mehr: Fehlerbehebung.

    Verwandte Dokumentation

    Related documentation

    Prerequisites

    Voraussetzung: Node, Postgres und Ports vor dem Klonen prüfen.

    Database Migrations

    Nächster Schritt: data/schema.sql und die Reihenfolge der Kingdom-Migrationen nach dem Env-Gerüst anwenden.

    First Success Validation

    Nächster Schritt: Smoke-Test für Health, Authentifizierung und CRUD, sobald npm run dev läuft.

    Database Backend Selection

    Vertiefung: zwischen k8s-postgres-fcm, supabase-fcm und firebase-full wählen.

    1. Docs
    2. /Erste Schritte
    3. /Installation

    Aktualisiert 14. Okt. 20267 Min. Anhören

    Installation

    Nutze die Tabs Gründer / Entwickler in der Seitenleiste, um diese Seite zu filtern. Erledige zuerst die Voraussetzungen. Diese Anleitung entspricht dem Open-Source-Repo (connectplatform/ring) und dem Standard PostgreSQL als Primärdatenbank (DB_BACKEND_MODE=k8s-postgres-fcm).

    Installiere Ring für die lokale Entwicklung auf deinem Rechner. Final-Split: Die Next.js-App liegt unter web/. Das install.sh im Repo-Root delegiert an web/, oder du führst ./install.sh direkt in ring/web aus.

    WegAm besten, wennErgebnis
    Empfohlen: install.shErster Klon, White-Label-GerüstKopiert env.local.template → .env.local, legt ring-config.json an, falls es fehlt, erzeugt AUTH_SECRET und führt npm install aus
    ManuellDu verwaltest Env und Konfiguration bereitsDieselben Dateien von Hand; jede Kopie und jedes Secret liegt bei dir
    Zeitbudget

    Vollständige Installation mit Postgres als Primärdatenbank (beim ersten Mal): etwa 45–90 Minuten. ./install.sh --quick mit einer vorhandenen PostgreSQL-Instanz geht meist schneller. Schema und einen OAuth-Anbieter musst du trotzdem anwenden, bevor die Anmeldung sinnvoll funktioniert.

    Was du installierst

    KomponenteGeprüfter Einstieg
    FrameworkNext.js 16 App Router + React 19
    AuthentifizierungAuth.js v5 (auth.ts, AUTH_SECRET, OAuth-Anbieter)
    Standard-DatenebenePostgreSQL über DB_BACKEND_MODE=k8s-postgres-fcm (verpflichtendes Env, kein stiller Standardwert)
    EntwicklungsserverEigener server.ts: Next.js + nativer WebSocket-Tunnel (/api/tunnel/ws) beim Self-Hosting
    White-Label-Konfigurationring-config.json (Layer1 liefert eventuell schon Community-Standardwerte; der Installer legt die Datei nur aus der Vorlage an, wenn sie fehlt)
    Installerinstall.sh v2.2.0 (SCRIPT_VERSION), enthält
    Ablauf der Installation

    Warum das für deinen Klon wichtig ist

    Du setzt einen Entwicklungsklon auf, damit Stakeholder Branding, Authentifizierung und die zentralen Marketplace-Abläufe durchklicken können, bevor es ein Produktions-Hosting gibt.

    Voraussetzungen

    Node 20+, Git, Postgres, Ports. Vor dem Klonen prüfen

    Datenbankmigrationen

    data/schema.sql und die Reihenfolge der Kingdom-Migrationen anwenden

    Auswahl des Datenbank-Backends

    k8s-postgres-fcm oder supabase-fcm oder firebase-full

    Empfohlener Weg: install.sh

    install.sh v2.2.0 legt Env, optionales ring-config.json, Secrets und Abhängigkeiten an. Für einen sauberen ersten Klon ist das der bevorzugte Weg.

    Voraussetzungen

    • Node.js 20+ (der Installer bricht bei älteren Hauptversionen ab)
    • Git und später PostgreSQL 14+ (empfohlen: 16 mit Docker / 18 mit Homebrew)
    • Aus einem OSS-Checkout: Repo-Root oder web/ (Final-Split)

    Schritte

    Häufige Fragen

    Auswirkungen

    Funktioniert mein Klon ohne Firebase?

    Ja für Browsen + Auth.js + CRUD in Postgres, wenn DB_BACKEND_MODE=k8s-postgres-fcm gesetzt ist. Client- und Admin-Schlüssel von Firebase werden für FCM-Push gebraucht, nicht für das erste Laden der Startseite.

    Brauche ich am ersten Tag Zugangsdaten für Zahlungen?

    Nein. WayForPay / Stripe kommen später: nach dem Ersten Erfolg und vor Checkout-Demos.

    Migration

    Nur das Schema oder alle Kingdom-Migrationen?

    Frische Installationen: Wende data/schema.sql an und danach die Inkremente für News/Zahlungen/E-Mail, wie unter Migrationen beschrieben. Wende das veraltete 001_email_crm_schema.sql nicht an.

    Ringdom-Monorepo oder eigenständiges Docker?

    Gleicher Datenbankname der App (ring_platform) und gleicher DB_*-Vertrag. Das Compose des Monorepos nutzt das Volume ringdom_postgres_data und Init-Skripte unter infrastructure/postgres/init/.

    Betrieb

    Port 3000 ist schon belegt?

    lsof -ti:3000 | xargs kill oder PORT=3001 npm run dev.

    Die Google-Anmeldung schlägt fehl?

    Prüfe AUTH_GOOGLE_*, die Weiterleitungs-URI http://localhost:3000/api/auth/callback/google und ein nicht leeres AUTH_SECRET.

    Tunnel-Fehler in der Konsole?

    Prüfe RING_DEPLOY_TARGET=self-hosted (und das öffentliche Gegenstück) für lokales WSS. Auf Vercel nutzt du vercel / nur SSE.

    Mehr: Fehlerbehebung.

    Verwandte Dokumentation

    Related documentation

    Prerequisites

    Voraussetzung: Node, Postgres und Ports vor dem Klonen prüfen.

    Database Migrations

    Nächster Schritt: data/schema.sql und die Reihenfolge der Kingdom-Migrationen nach dem Env-Gerüst anwenden.

    First Success Validation

    Nächster Schritt: Smoke-Test für Health, Authentifizierung und CRUD, sobald npm run dev läuft.

    Database Backend Selection

    Vertiefung: zwischen k8s-postgres-fcm, supabase-fcm und firebase-full wählen.

    1. Docs
    2. /Erste Schritte
    3. /Installation

    Aktualisiert 14. Okt. 20267 Min. Anhören

    setup-db

    Validierung des ersten Erfolgs

    Smoke-Test-Checkliste nach npm run dev

    Typische Szenarien

    SzenarioInstallationswahlFertig, wenn…
    UI / Branding erkunden./install.sh --quick + Postgres (oder ein kurzer Prototyp mit firebase-full)Die Startseite lädt ohne Adapterfehler
    Lokal mit ProduktionsparitätPostgres als Primärdatenbank + MigrationenAuthentifizierung und ein CRUD-Weg bestehen den Ersten Erfolg
    Von Ringdom verwalteter SiedlerDas meiste hiervon überspringenDer Cluster ist bereits bereitgestellt. Anpassung über ring-config / Ops, nicht über lokales Docker

    Zahlungen, FCM-Push und Web3-Wallets sind für den ersten Start nicht nötig. Ergänze sie vor dem Checkout oder vor Push in Produktion. Siehe Umgebung.

    1. 1

      Klonen und den Installer ausführen

      Nützliche Flags und Modi:

      Flag / ModusWirkung
      --quickNicht interaktive Standardwerte
      --clone-name NAMEWhite-Label-Slug in ring-config.json
      dev / prodExpliziter Setup-Modus
      setup-dbDatenbank anlegen und data/schema.sql anwenden (zusammengeführte Referenz)
      --helpVollständige Optionsliste
    2. 2

      Pflichtwerte in .env.local ergänzen

      Die Vorlage wird automatisch kopiert. Der Installer erzeugt AUTH_SECRET, wenn openssl verfügbar ist. Setze vor dem ersten sinnvollen Start die Datenbank-Variablen und mindestens einen OAuth-Anbieter (siehe Umgebung konfigurieren).

    3. 3

      PostgreSQL-Schema anwenden

      Nutze die Tabs Docker / vorhandener Server / Ringdom-Monorepo unten oder:

      Vollständige inkrementelle Reihenfolge: Datenbankmigrationen.

    Manueller Weg

    Für den Fall, dass du Env-Dateien oder den Paketmanager bereits selbst steuerst.

    1. 1

      Klonen und Abhängigkeiten installieren

    2. 2

      Umgebung und Klon-Konfiguration anlegen

      Bearbeite ring-config.json: clone.displayName, domains.development und features für deine White-Label-Instanz. Layer1 committet oft bereits ein Community-ring-config.json; überschreibe es nicht leichtfertig.

    PostgreSQL einrichten

    Lokale Entwicklung im Produktionsstil nutzt die Datenbank ring_platform mit dem Benutzer ring_user. Referenz für das App-Schema: data/schema.sql (v4-Familie, siehe die Zeilen in schema_versions im Dump).

    Erforderlich für k8s-postgres-fcm

    DB_BACKEND_MODE ist verpflichtend (lib/database/backend-mode-config.ts). Die Plattform erwartet PostgreSQL, wenn der Wert k8s-postgres-fcm ist (Standard der Vorlage). Zur Reihenfolge siehe Datenbankmigrationen.

    Eigenständiger Klon, kein Ringdom-Monorepo nötig:

    Basisschema anwenden, danach die Kingdom-Inkremente (gekürzt; die vollständige Matrix steht auf der Seite zu den Migrationen):

    001 nicht anwenden

    001_email_crm_schema.sql ist veraltet. Nutze 009 + 010 mit JSONB. Idempotente Inkremente, die bereits in schema.sql eingeflossen sind, behandelt die Seite Migrationen.

    Umgebung konfigurieren

    Setze diese Werte in .env.local (aus env.local.template). Die gezeigten Werte sind auf lokale Entwicklung ausgerichtet. NEXT_PUBLIC_BASE_URL in der Vorlage zeigt eventuell standardmäßig auf das öffentliche Portal; überschreibe den Wert für localhost.

    Backend-Modus und Datenbank

    Empfohlen

    Anwendungsdaten in PostgreSQL; Firebase Admin wird nur für FCM-Push genutzt, wenn konfiguriert. Entspricht der Produktionsaufstellung von ring-platform.org.

    Auth.js und URLs

    OAuth-Weiterleitungs-URI

    Füge in der Google Cloud Console die autorisierte Weiterleitungs-URI hinzu: http://localhost:3000/api/auth/callback/google

    Tunnel, FCM, Sprachen

    npm run dev führt node --import tsx server.ts aus. Setze auf Vercel RING_DEPLOY_TARGET=vercel für reines SSE (ohne natives WSS).

    FCM-Schlüssel (AUTH_FIREBASE_*, NEXT_PUBLIC_FIREBASE_*) stehen in env.local.template und sind für Startseite und Authentifizierung mit Postgres als Primärdatenbank optional. Setze AUTH_FIREBASE_PRIVATE_KEY in Anführungszeichen mit literalen \\n; committe .env.local niemals.

    Den Entwicklungsserver starten

    1. 1

      Die App starten

      Erwartet werden Logzeilen wie diese:

      text
      
      > Ready on http://localhost:3000 [self-hosted]
      [server] Native WSS attached at /api/tunnel/ws (RING_DEPLOY_TARGET=self-hosted)

      Die erste Kompilierung kann einige Dutzend Sekunden dauern.

    2. 2

      Öffnen und Smoke-Test

      Öffne http://localhost:3000: Die Startseite wird über HomeWrapper (components/wrappers/home-wrapper.tsx) und die Sprachdateien unter locales/{en,uk,ru}/ gerendert.

      Optional:

      Struktur der Health-Antwort: app/api/health/route.ts. status ist healthy | degraded | unhealthy. Fehlendes AUTH_SECRET → degraded und HTTP 503.

    Installation abgeschlossen

    Wenn die Startseite ohne Fehler des Datenbankadapters lädt, mach weiter mit der Validierung des ersten Erfolgs.

    Modulübersicht (geprüfte Pfade)

    ThemaPfad
    Installerinstall.sh (Launcher im Root → web/install.sh)
    Env-Vorlageenv.local.template
    Backend-Moduslib/database/backend-mode-config.ts
    Schema-Referenzdata/schema.sql
    Einstieg für die Entwicklungpackage.json → server.ts
    Tunnel-WSSserver.ts → /api/tunnel/ws
    Healthapp/api/health/route.ts

    Local Setup

    Gleicher Ablauf: Projektstruktur und lokale Werkzeuge für den Alltag nach der Installation.

    setup-db

    Validierung des ersten Erfolgs

    Smoke-Test-Checkliste nach npm run dev

    Typische Szenarien

    SzenarioInstallationswahlFertig, wenn…
    UI / Branding erkunden./install.sh --quick + Postgres (oder ein kurzer Prototyp mit firebase-full)Die Startseite lädt ohne Adapterfehler
    Lokal mit ProduktionsparitätPostgres als Primärdatenbank + MigrationenAuthentifizierung und ein CRUD-Weg bestehen den Ersten Erfolg
    Von Ringdom verwalteter SiedlerDas meiste hiervon überspringenDer Cluster ist bereits bereitgestellt. Anpassung über ring-config / Ops, nicht über lokales Docker

    Zahlungen, FCM-Push und Web3-Wallets sind für den ersten Start nicht nötig. Ergänze sie vor dem Checkout oder vor Push in Produktion. Siehe Umgebung.

    1. 1

      Klonen und den Installer ausführen

      Nützliche Flags und Modi:

      Flag / ModusWirkung
      --quickNicht interaktive Standardwerte
      --clone-name NAMEWhite-Label-Slug in ring-config.json
      dev / prodExpliziter Setup-Modus
      setup-dbDatenbank anlegen und data/schema.sql anwenden (zusammengeführte Referenz)
      --helpVollständige Optionsliste
    2. 2

      Pflichtwerte in .env.local ergänzen

      Die Vorlage wird automatisch kopiert. Der Installer erzeugt AUTH_SECRET, wenn openssl verfügbar ist. Setze vor dem ersten sinnvollen Start die Datenbank-Variablen und mindestens einen OAuth-Anbieter (siehe Umgebung konfigurieren).

    3. 3

      PostgreSQL-Schema anwenden

      Nutze die Tabs Docker / vorhandener Server / Ringdom-Monorepo unten oder:

      Vollständige inkrementelle Reihenfolge: Datenbankmigrationen.

    Manueller Weg

    Für den Fall, dass du Env-Dateien oder den Paketmanager bereits selbst steuerst.

    1. 1

      Klonen und Abhängigkeiten installieren

    2. 2

      Umgebung und Klon-Konfiguration anlegen

      Bearbeite ring-config.json: clone.displayName, domains.development und features für deine White-Label-Instanz. Layer1 committet oft bereits ein Community-ring-config.json; überschreibe es nicht leichtfertig.

    PostgreSQL einrichten

    Lokale Entwicklung im Produktionsstil nutzt die Datenbank ring_platform mit dem Benutzer ring_user. Referenz für das App-Schema: data/schema.sql (v4-Familie, siehe die Zeilen in schema_versions im Dump).

    Erforderlich für k8s-postgres-fcm

    DB_BACKEND_MODE ist verpflichtend (lib/database/backend-mode-config.ts). Die Plattform erwartet PostgreSQL, wenn der Wert k8s-postgres-fcm ist (Standard der Vorlage). Zur Reihenfolge siehe Datenbankmigrationen.

    Eigenständiger Klon, kein Ringdom-Monorepo nötig:

    Basisschema anwenden, danach die Kingdom-Inkremente (gekürzt; die vollständige Matrix steht auf der Seite zu den Migrationen):

    001 nicht anwenden

    001_email_crm_schema.sql ist veraltet. Nutze 009 + 010 mit JSONB. Idempotente Inkremente, die bereits in schema.sql eingeflossen sind, behandelt die Seite Migrationen.

    Umgebung konfigurieren

    Setze diese Werte in .env.local (aus env.local.template). Die gezeigten Werte sind auf lokale Entwicklung ausgerichtet. NEXT_PUBLIC_BASE_URL in der Vorlage zeigt eventuell standardmäßig auf das öffentliche Portal; überschreibe den Wert für localhost.

    Backend-Modus und Datenbank

    Empfohlen

    Anwendungsdaten in PostgreSQL; Firebase Admin wird nur für FCM-Push genutzt, wenn konfiguriert. Entspricht der Produktionsaufstellung von ring-platform.org.

    Auth.js und URLs

    OAuth-Weiterleitungs-URI

    Füge in der Google Cloud Console die autorisierte Weiterleitungs-URI hinzu: http://localhost:3000/api/auth/callback/google

    Tunnel, FCM, Sprachen

    npm run dev führt node --import tsx server.ts aus. Setze auf Vercel RING_DEPLOY_TARGET=vercel für reines SSE (ohne natives WSS).

    FCM-Schlüssel (AUTH_FIREBASE_*, NEXT_PUBLIC_FIREBASE_*) stehen in env.local.template und sind für Startseite und Authentifizierung mit Postgres als Primärdatenbank optional. Setze AUTH_FIREBASE_PRIVATE_KEY in Anführungszeichen mit literalen \\n; committe .env.local niemals.

    Den Entwicklungsserver starten

    1. 1

      Die App starten

      Erwartet werden Logzeilen wie diese:

      text
      
      > Ready on http://localhost:3000 [self-hosted]
      [server] Native WSS attached at /api/tunnel/ws (RING_DEPLOY_TARGET=self-hosted)

      Die erste Kompilierung kann einige Dutzend Sekunden dauern.

    2. 2

      Öffnen und Smoke-Test

      Öffne http://localhost:3000: Die Startseite wird über HomeWrapper (components/wrappers/home-wrapper.tsx) und die Sprachdateien unter locales/{en,uk,ru}/ gerendert.

      Optional:

      Struktur der Health-Antwort: app/api/health/route.ts. status ist healthy | degraded | unhealthy. Fehlendes AUTH_SECRET → degraded und HTTP 503.

    Installation abgeschlossen

    Wenn die Startseite ohne Fehler des Datenbankadapters lädt, mach weiter mit der Validierung des ersten Erfolgs.

    Modulübersicht (geprüfte Pfade)

    ThemaPfad
    Installerinstall.sh (Launcher im Root → web/install.sh)
    Env-Vorlageenv.local.template
    Backend-Moduslib/database/backend-mode-config.ts
    Schema-Referenzdata/schema.sql
    Einstieg für die Entwicklungpackage.json → server.ts
    Tunnel-WSSserver.ts → /api/tunnel/ws
    Healthapp/api/health/route.ts

    Local Setup

    Gleicher Ablauf: Projektstruktur und lokale Werkzeuge für den Alltag nach der Installation.

    setup-db

    Validierung des ersten Erfolgs

    Smoke-Test-Checkliste nach npm run dev

    Typische Szenarien

    SzenarioInstallationswahlFertig, wenn…
    UI / Branding erkunden./install.sh --quick + Postgres (oder ein kurzer Prototyp mit firebase-full)Die Startseite lädt ohne Adapterfehler
    Lokal mit ProduktionsparitätPostgres als Primärdatenbank + MigrationenAuthentifizierung und ein CRUD-Weg bestehen den Ersten Erfolg
    Von Ringdom verwalteter SiedlerDas meiste hiervon überspringenDer Cluster ist bereits bereitgestellt. Anpassung über ring-config / Ops, nicht über lokales Docker

    Zahlungen, FCM-Push und Web3-Wallets sind für den ersten Start nicht nötig. Ergänze sie vor dem Checkout oder vor Push in Produktion. Siehe Umgebung.

    1. 1

      Klonen und den Installer ausführen

      Nützliche Flags und Modi:

      Flag / ModusWirkung
      --quickNicht interaktive Standardwerte
      --clone-name NAMEWhite-Label-Slug in ring-config.json
      dev / prodExpliziter Setup-Modus
      setup-dbDatenbank anlegen und data/schema.sql anwenden (zusammengeführte Referenz)
      --helpVollständige Optionsliste
    2. 2

      Pflichtwerte in .env.local ergänzen

      Die Vorlage wird automatisch kopiert. Der Installer erzeugt AUTH_SECRET, wenn openssl verfügbar ist. Setze vor dem ersten sinnvollen Start die Datenbank-Variablen und mindestens einen OAuth-Anbieter (siehe Umgebung konfigurieren).

    3. 3

      PostgreSQL-Schema anwenden

      Nutze die Tabs Docker / vorhandener Server / Ringdom-Monorepo unten oder:

      Vollständige inkrementelle Reihenfolge: Datenbankmigrationen.

    Manueller Weg

    Für den Fall, dass du Env-Dateien oder den Paketmanager bereits selbst steuerst.

    1. 1

      Klonen und Abhängigkeiten installieren

    2. 2

      Umgebung und Klon-Konfiguration anlegen

      Bearbeite ring-config.json: clone.displayName, domains.development und features für deine White-Label-Instanz. Layer1 committet oft bereits ein Community-ring-config.json; überschreibe es nicht leichtfertig.

    PostgreSQL einrichten

    Lokale Entwicklung im Produktionsstil nutzt die Datenbank ring_platform mit dem Benutzer ring_user. Referenz für das App-Schema: data/schema.sql (v4-Familie, siehe die Zeilen in schema_versions im Dump).

    Erforderlich für k8s-postgres-fcm

    DB_BACKEND_MODE ist verpflichtend (lib/database/backend-mode-config.ts). Die Plattform erwartet PostgreSQL, wenn der Wert k8s-postgres-fcm ist (Standard der Vorlage). Zur Reihenfolge siehe Datenbankmigrationen.

    Eigenständiger Klon, kein Ringdom-Monorepo nötig:

    Basisschema anwenden, danach die Kingdom-Inkremente (gekürzt; die vollständige Matrix steht auf der Seite zu den Migrationen):

    001 nicht anwenden

    001_email_crm_schema.sql ist veraltet. Nutze 009 + 010 mit JSONB. Idempotente Inkremente, die bereits in schema.sql eingeflossen sind, behandelt die Seite Migrationen.

    Umgebung konfigurieren

    Setze diese Werte in .env.local (aus env.local.template). Die gezeigten Werte sind auf lokale Entwicklung ausgerichtet. NEXT_PUBLIC_BASE_URL in der Vorlage zeigt eventuell standardmäßig auf das öffentliche Portal; überschreibe den Wert für localhost.

    Backend-Modus und Datenbank

    Empfohlen

    Anwendungsdaten in PostgreSQL; Firebase Admin wird nur für FCM-Push genutzt, wenn konfiguriert. Entspricht der Produktionsaufstellung von ring-platform.org.

    Auth.js und URLs

    OAuth-Weiterleitungs-URI

    Füge in der Google Cloud Console die autorisierte Weiterleitungs-URI hinzu: http://localhost:3000/api/auth/callback/google

    Tunnel, FCM, Sprachen

    npm run dev führt node --import tsx server.ts aus. Setze auf Vercel RING_DEPLOY_TARGET=vercel für reines SSE (ohne natives WSS).

    FCM-Schlüssel (AUTH_FIREBASE_*, NEXT_PUBLIC_FIREBASE_*) stehen in env.local.template und sind für Startseite und Authentifizierung mit Postgres als Primärdatenbank optional. Setze AUTH_FIREBASE_PRIVATE_KEY in Anführungszeichen mit literalen \\n; committe .env.local niemals.

    Den Entwicklungsserver starten

    1. 1

      Die App starten

      Erwartet werden Logzeilen wie diese:

      text
      
      > Ready on http://localhost:3000 [self-hosted]
      [server] Native WSS attached at /api/tunnel/ws (RING_DEPLOY_TARGET=self-hosted)

      Die erste Kompilierung kann einige Dutzend Sekunden dauern.

    2. 2

      Öffnen und Smoke-Test

      Öffne http://localhost:3000: Die Startseite wird über HomeWrapper (components/wrappers/home-wrapper.tsx) und die Sprachdateien unter locales/{en,uk,ru}/ gerendert.

      Optional:

      Struktur der Health-Antwort: app/api/health/route.ts. status ist healthy | degraded | unhealthy. Fehlendes AUTH_SECRET → degraded und HTTP 503.

    Installation abgeschlossen

    Wenn die Startseite ohne Fehler des Datenbankadapters lädt, mach weiter mit der Validierung des ersten Erfolgs.

    Modulübersicht (geprüfte Pfade)

    ThemaPfad
    Installerinstall.sh (Launcher im Root → web/install.sh)
    Env-Vorlageenv.local.template
    Backend-Moduslib/database/backend-mode-config.ts
    Schema-Referenzdata/schema.sql
    Einstieg für die Entwicklungpackage.json → server.ts
    Tunnel-WSSserver.ts → /api/tunnel/ws
    Healthapp/api/health/route.ts

    Local Setup

    Gleicher Ablauf: Projektstruktur und lokale Werkzeuge für den Alltag nach der Installation.