relational-database-web-cloudbase
Use when building frontend Web apps that talk to CloudBase Relational Database via @cloudbase/js-sdk – provides the canonical init pattern so you can then use Supabase-style queries from the browser.
Install
mkdir -p .claude/skills/relational-database-web-cloudbase && curl -L -o skill.zip "https://mcp.directory/api/skills/download/5524" && unzip -o skill.zip -d .claude/skills/relational-database-web-cloudbase && rm skill.zipInstalls to .claude/skills/relational-database-web-cloudbase
About this skill
When to use this skill
Use this skill whenever you need to access CloudBase Relational Database from a browser app (React, Vue, vanilla JS) using @cloudbase/js-sdk.
Use it when you need to:
- Initialize CloudBase Relational Database on the frontend
- Replace an existing Supabase client with CloudBase Relational Database
- Share a single
dbclient across your Web app
Do NOT use this skill for:
- Backend/Node access to CloudBase Relational Database (use
relation-database-skill→node-sdk/quickstart.md) - MCP/agent database management (use
relation-database-skill→mcp-tools/mcp-guide.md) - Auth flows (use the Web/Node/Auth skills instead)
How to use this skill (for a coding agent)
- Confirm environment
- Ask the user for:
env– CloudBase environment ID
- Ask the user for:
- Follow the initialization pattern in this file exactly
- Only change values like
env, never the object shape.
- Only change values like
- After initialization, use Supabase knowledge for queries
- Treat
dbas a Supabase client – method names and patterns are identical.
- Treat
- Avoid re-initializing CloudBase
- Create a single shared
dbclient and reuse it across components.
- Create a single shared
Installation
npm install @cloudbase/js-sdk
Initialization pattern (canonical)
import cloudbase from "@cloudbase/js-sdk";
const app = cloudbase.init({
env: "your-env-id", // CloudBase environment ID
});
const auth = app.auth();
// Handle user authentication separately (Web Auth skill)
const db = app.rdb();
// Use db exactly like a Supabase client
Initialization rules (Web, @cloudbase/js-sdk):
- Always use synchronous initialization with the pattern above
- Do not lazy-load the SDK with
import("@cloudbase/js-sdk") - Do not wrap SDK initialization in async helpers such as
initCloudBase()with internalinitPromisecaches - Create a single shared
dbclient and reuse it instead of re-initializing
Rules:
- Do not invent new properties on the
cloudbase.initoptions. - Always call
app.rdb()to get the database client;appis not the DB client.
Scenario 1: Replace Supabase client in a React app
// lib/db.js (shared database client)
import cloudbase from "@cloudbase/js-sdk";
const app = cloudbase.init({
env: "your-env-id",
});
export const db = app.rdb();
// hooks/usePosts.js
import { useEffect, useState } from "react";
import { db } from "../lib/db";
export function usePosts() {
const [posts, setPosts] = useState([]);
useEffect(() => {
async function fetchPosts() {
const { data } = await db.from("posts").select("*");
setPosts(data || []);
}
fetchPosts();
}, []);
return { posts };
}
Scenario 2: Basic query pattern (Supabase-style)
// Fetch latest posts
const { data, error } = await db
.from("posts")
.select("*")
.order("created_at", { ascending: false });
if (error) {
console.error("Failed to load posts", error.message);
}
Scenario 3: Insert / update / delete rows
// Insert
await db.from("posts").insert({ title: "Hello" });
// Update
await db.from("posts").update({ title: "Updated" }).eq("id", 1);
// Delete
await db.from("posts").delete().eq("id", 1);
Key principle: CloudBase Relational Database = Supabase API
- After you have
db = app.rdb(), use Supabase documentation and patterns for all queries. - This skill only standardizes Web initialization and client sharing.
- Do not duplicate Supabase docs into this skill; rely on the model's built-in Supabase knowledge for query shapes and options.
More by TencentCloudBase
View all skills by TencentCloudBase →You might also like
flutter-development
aj-geddes
Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.
drawio-diagrams-enhanced
jgtolentino
Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.
godot
bfollington
This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.
ui-ux-pro-max
nextlevelbuilder
"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."
nano-banana-pro
garg-aayush
Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.
fastapi-templates
wshobson
Create production-ready FastAPI projects with async patterns, dependency injection, and comprehensive error handling. Use when building new FastAPI applications or setting up backend API projects.
Related MCP Servers
Browse all serversUno Platform — Documentation and prompts for building cross-platform .NET apps with a single codebase. Get guides, sampl
The fullstack MCP framework for developing MCP apps for ChatGPT, Claude, and building MCP servers for AI agents. Connect
Use Firebase to integrate Firebase Authentication, Firestore, and Storage for seamless backend services in your apps.
Build iOS apps efficiently with Xcodebuild, integrating testing and error handling. Automate BrowserStack for seamless d
Integrate TomTom's APIs for advanced location-aware apps with maps, routing, geocoding, and traffic—an alternative to Go
Build business apps efficiently with Databutton—plan and scaffold projects with React frontends and Python backends.
Stay ahead of the MCP ecosystem
Get weekly updates on new skills and servers.