web-development

web-development

Web frontend project development rules. Use this skill when developing web frontend pages, deploying static hosting, and integrating CloudBase Web SDK.

2étoiles
0forks
Mis à jour 1/23/2026
SKILL.md
readonlyread-only
name
web-development
description

Web frontend project development rules. Use this skill when developing web frontend pages, deploying static hosting, and integrating CloudBase Web SDK.

When to use this skill

Use this skill for Web frontend project development when you need to:

  • Develop web frontend pages and interfaces
  • Deploy static websites to CloudBase static hosting
  • Integrate CloudBase Web SDK for database, cloud functions, and authentication
  • Set up modern frontend build systems (Vite, Webpack, etc.)
  • Handle routing and build configurations for static hosting

Do NOT use for:

  • Mini-program development (use miniprogram-development skill)
  • Backend service development (use cloudrun-development skill)
  • UI design only (use ui-design skill, but may combine with this skill)

How to use this skill (for a coding agent)

  1. Follow project structure conventions

    • Frontend source code in src directory
    • Build output in dist directory
    • Cloud functions in cloudfunctions directory
    • Use modern frontend build systems (Vite, etc.)
  2. Use CloudBase Web SDK correctly

    • Always use SDK built-in authentication features
    • Never implement login logic in cloud functions
    • Use envQuery tool to get environment ID
  3. Deploy and preview properly

    • Build project first (ensure npm install is executed)
    • Use relative paths for publicPath configuration
    • Use hash routing for better static hosting compatibility
    • Deploy to subdirectory if user doesn't specify root directory

Web Frontend Development Rules

Project Structure

  1. Directory Organization:

    • Frontend source code should be stored in src directory
    • Build output should be placed in dist directory
    • Cloud functions should be in cloudfunctions directory
  2. Build System:

    • Projects should use modern frontend build systems like Vite
    • Install dependencies via npm
  3. Routing:

    • If the frontend project involves routing, use hash routing by default
    • Hash routing solves the 404 refresh issue and is more suitable for static website hosting deployment

Deployment and Preview

  1. Static Hosting Deployment:

    • For frontend projects, after building, you can use CloudBase static hosting
    • First start local preview, then confirm with user if deployment to CloudBase static hosting is needed
    • When deploying, if user has no special requirements, generally do not deploy directly to root directory
    • Return deployed address in markdown link format
  2. Local Preview:

    • To preview static web pages locally, navigate to the specified output directory and use npx live-server
  3. Public Path Configuration:

    • When web projects are deployed to static hosting CDN, since paths cannot be known in advance, publicPath and similar configurations should use relative paths instead of absolute paths
    • This solves resource loading issues

CloudBase Web SDK Usage

  1. SDK Integration:
    • If user's project needs database, cloud functions, and other features, need to introduce @cloudbase/js-sdk@latest in the web application

Important: Authentication must use SDK built-in features. It is strictly forbidden to implement login authentication logic using cloud functions!

import cloudbase from "@cloudbase/js-sdk";

const app = cloudbase.init({
  env: "xxxx-yyy", // Can query environment ID via envQuery tool
});
const auth = app.auth();

// Check current login state
let loginState = await auth.getLoginState();

if (loginState && loginState.user) {
  // Logged in
  const user = await auth.getCurrentUser();
  console.log("Current user:", user);
} else {
  // Not logged in - use SDK built-in authentication features
    
  // Collect user's phone number into variable `phoneNum` by providing a input UI

  // Send SMS code
  const verificationInfo = await auth.getVerification({
    phone_number: `+86 ${phoneNum}`,
  });
  
  // Collect user's phone number into variable `verificationCode` by providing a input UI 
  
  // Sign in
  await auth.signInWithSms({
    verificationInfo,
    verificationCode,
    phoneNum,
  });
}

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 internal initPromise caches
  • Keep a single shared app/auth instance in your frontend app; reuse it instead of re-initializing

Web SDK API usage rules

  • Only use documented CloudBase Web SDK methods
  • Before calling any method on app, auth, db, or other SDK objects, confirm it exists in the official CloudBase Web SDK documentation
  • If a method or option is not mentioned in the official docs (for example some guessed method name), do NOT invent or use it

Authentication Best Practices

  1. Must use SDK built-in authentication: CloudBase Web SDK provides complete authentication features, including login by SMS, anonymous login, custom login, etc.

  2. Forbidden to implement login using cloud functions: Do not create cloud functions to handle login logic, this is the wrong approach

  3. User data management: After login, user information can be obtained via auth.getCurrentUser(), then stored to database

  4. Error handling: All authentication operations should include complete error handling logic

Build Process

Web project build process: Ensure npm install command has been executed first, then refer to project documentation for building

You Might Also Like

Related Skills

cache-components

cache-components

137Kdev-frontend

Expert guidance for Next.js Cache Components and Partial Prerendering (PPR). **PROACTIVE ACTIVATION**: Use this skill automatically when working in Next.js projects that have `cacheComponents: true` in their next.config.ts/next.config.js. When this config is detected, proactively apply Cache Components patterns and best practices to all React Server Component implementations. **DETECTION**: At the start of a session in a Next.js project, check for `cacheComponents: true` in next.config. If enabled, this skill's patterns should guide all component authoring, data fetching, and caching decisions. **USE CASES**: Implementing 'use cache' directive, configuring cache lifetimes with cacheLife(), tagging cached data with cacheTag(), invalidating caches with updateTag()/revalidateTag(), optimizing static vs dynamic content boundaries, debugging cache issues, and reviewing Cache Component implementations.

vercel avatarvercel
Obtenir
component-refactoring

component-refactoring

128Kdev-frontend

Refactor high-complexity React components in Dify frontend. Use when `pnpm analyze-component --json` shows complexity > 50 or lineCount > 300, when the user asks for code splitting, hook extraction, or complexity reduction, or when `pnpm analyze-component` warns to refactor before testing; avoid for simple/well-structured components, third-party wrappers, or when the user explicitly wants testing without refactoring.

langgenius avatarlanggenius
Obtenir
web-artifacts-builder

web-artifacts-builder

47Kdev-frontend

Suite of tools for creating elaborate, multi-component claude.ai HTML artifacts using modern frontend web technologies (React, Tailwind CSS, shadcn/ui). Use for complex artifacts requiring state management, routing, or shadcn/ui components - not for simple single-file HTML/JSX artifacts.

anthropics avataranthropics
Obtenir
frontend-design

frontend-design

47Kdev-frontend

Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design that avoids generic AI aesthetics.

anthropics avataranthropics
Obtenir
react-modernization

react-modernization

28Kdev-frontend

Upgrade React applications to latest versions, migrate from class components to hooks, and adopt concurrent features. Use when modernizing React codebases, migrating to React Hooks, or upgrading to latest React versions.

wshobson avatarwshobson
Obtenir
tailwind-design-system

tailwind-design-system

28Kdev-frontend

Build scalable design systems with Tailwind CSS v4, design tokens, component libraries, and responsive patterns. Use when creating component libraries, implementing design systems, or standardizing UI patterns.

wshobson avatarwshobson
Obtenir