Skip to main content
Diese Seite ist Teil eines KI-Coding-Agent-Skills und für Agenten geschrieben, nicht für Menschen. Für die menschenlesbare Base44-Dokumentation siehe die Entwicklerdokumentation.

Base44 Coder

Apps auf der Base44-Plattform mit dem Base44-JavaScript-SDK erstellen.

⚡ SOFORTIGE HANDLUNG ERFORDERLICH — Lies das zuerst

Dieser Skill aktiviert sich bei jeder Erwähnung von “base44” oder wenn ein base44/-Ordner existiert. Lies keine Dokumentationsdateien und suche nicht im Web, bevor du handelst. Deine erste Aktion MUSS sein:
  1. Prüfe, ob base44/config.jsonc im aktuellen Verzeichnis existiert
  2. Wenn JA (bestehendes Projektszenario):
    • Dieser Skill (base44-sdk) übernimmt die Anfrage
    • Implementiere Funktionen mit dem Base44-SDK
    • Verwende base44-cli NICHT, außer der Nutzer verlangt ausdrücklich CLI-Befehle
  3. Wenn NEIN (neues Projektszenario):
    • Übergib an den base44-cli-Skill zur Projektinitialisierung
    • Dieser Skill kann nicht helfen, bis das Projekt initialisiert ist

Wann diesen Skill vs base44-cli verwenden

Verwende base44-sdk, wenn:
  • Du Funktionen in einem BESTEHENDEN Base44-Projekt baust
  • base44/config.jsonc im Projekt bereits existiert
  • Base44-SDK-Imports vorhanden sind (@base44/sdk)
  • Du JavaScript/TypeScript-Code mit Base44-SDK-Modulen schreibst
  • Du Funktionalität, Komponenten oder Features implementierst
  • Der Nutzer erwähnt: “implementieren”, “Feature bauen”, “Funktionalität hinzufügen”, “Code schreiben für”
  • Der Nutzer sagt “create a [type] app” und ein Base44-Projekt existiert bereits
Verwende base44-sdk NICHT für:
  • ❌ Initialisierung neuer Base44-Projekte (nutze stattdessen base44-cli)
  • ❌ Leere Verzeichnisse ohne Base44-Konfiguration
  • ❌ Wenn der Nutzer sagt “create a new Base44 project/app/site” und kein Projekt existiert
  • ❌ CLI-Befehle wie npx base44 create, npx base44 deploy, npx base44 login (nutze base44-cli)
Skill-Abhängigkeiten:
  • base44-sdk setzt voraus, dass ein Base44-Projekt bereits initialisiert ist
  • base44-cli ist eine Voraussetzung für base44-sdk in neuen Projekten
  • Wenn der Nutzer “eine App erstellen” möchte und kein Base44-Projekt existiert, verwende zuerst base44-cli
Statusprüfungs-Logik: Vor der Auswahl dieses Skills prüfe:
  • WENN (Nutzer erwähnt “App erstellen/bauen” ODER “Projekt machen”):
    • WENN (Verzeichnis leer ODER keine base44/config.jsonc existiert): → Verwende base44-cli (Projektinitialisierung nötig)
    • SONST: → Verwende base44-sdk (Projekt existiert, Features bauen)

Schnellstart

⚠️ KRITISCH: APIs nicht halluzinieren

Bevor du IRGENDEINEN Base44-Code schreibst, prüfe Methodennamen gegen diese Tabelle oder QUICK_REFERENCE.md. Das Base44-SDK hat einzigartige Methodennamen. Nimm KEINE Muster von Firebase, Supabase oder anderen SDKs an.

Authentifizierung — FALSCH vs RICHTIG

Funktionen — FALSCH vs RICHTIG

Integrationen — FALSCH vs RICHTIG

Entitäten — FALSCH vs RICHTIG

SDK-Module

Für Client-Setup und Authentifizierungsmodi siehe client.md.

TypeScript und Type-Registries

Jede Referenzdatei enthält einen Abschnitt “Type Definitions” mit TypeScript-Interfaces und -Typen für die Methoden, Parameter und Rückgabewerte des Moduls. Typisierte Entitäten, Funktionen und Agenten erhalten: Die Base44-CLI generiert Typen aus deinen Projektressourcen (Entitäten, Funktionen, Agenten), inklusive Erweiterungen von EntityTypeRegistry, FunctionNameRegistry und AgentNameRegistry, und verdrahtet sie in dein Projekt, sodass du Autocomplete und Typprüfung ohne manuelles Setup bekommst. Wie du Typen generierst, siehe den Skill base44-cli. Manuelle Erweiterung: Du kannst die Registries stattdessen selbst in einer .d.ts-Datei erweitern; siehe die “Type Definitions”-Abschnitte in entities.md, functions.md und base44-agents.md.

Installation

Installiere das Base44-SDK:
Wichtig: Nimm nie eine Version des Pakets @base44/sdk an oder codiere sie fest. Installiere immer ohne Versionsspezifizierer, um die neueste Version zu erhalten.

Client erstellen (externe Apps)

Beim Erstellen eines Clients in externen Apps verwende IMMER appId als Parametername:
Erforderlicher Parameter: appId (string) — Die ID deiner Base44-Anwendung Optionale Parameter:
  • token (string) — Vorauthentifizierter Nutzer-Token
  • options (object) — Konfigurationsoptionen
    • options.onError (function) — Globaler Fehler-Handler
Beispiel mit Fehler-Handler:

Modulauswahl

Mit App-Daten arbeiten?
  • Datensätze erstellen/lesen/aktualisieren/löschen → entities
  • Daten aus Datei importieren → entities.importEntities()
  • Echtzeit-Updates → entities.EntityName.subscribe()
Nutzerverwaltung?
  • Login/Registrierung/Logout → auth
  • Aktuellen Nutzer holen → auth.me()
  • Nutzerprofil aktualisieren → auth.updateMe()
  • Nutzer einladen → users.inviteUser()
KI-Funktionen?
  • Mit KI-Agenten chatten → agents (erfordert eingeloggten Nutzer)
  • Neue Konversation erstellen → agents.createConversation()
  • Konversationen verwalten → agents.getConversations()
  • Text/JSON mit KI generieren → integrations.Core.InvokeLLM()
  • Bilder generieren → integrations.Core.GenerateImage()
Benutzerdefinierte Backend-Logik?
  • Serverseitigen Code ausführen → functions.invoke()
  • Admin-Zugriff nötig → base44.asServiceRole.functions.invoke()
Externe Dienste?
  • E-Mails senden → integrations.Core.SendEmail()
  • Dateien hochladen → integrations.Core.UploadFile()
  • Benutzerdefinierte APIs → integrations.custom.call()
  • App-bezogenes OAuth (Konto des App-Builders) → asServiceRole.connectors.getConnection() (nur Backend)
Tracking und Analytik?
  • Benutzerdefinierte Ereignisse verfolgen → analytics.track()
  • Seitenaufrufe/Aktivität loggen → appLogs.logUserInApp()

Häufige Muster

Daten filtern und sortieren

Geschützte Routen (Auth prüfen)

Backend-Funktionsaufruf

Service-Rollen-Zugriff

Verwende asServiceRole in Backend-Funktionen für Admin-Operationen:

Frontend vs Backend

Backend-Funktionen verwenden Deno.serve() und createClientFromRequest(req), um einen ordnungsgemäß authentifizierten Client zu erhalten.
Diese Seite wurde mit KI übersetzt. Für die genauesten und aktuellsten Informationen siehe die englische Version.