Web Development
by @binggg
Use when users need to implement, integrate, debug, build, deploy, or validate a Web frontend after the product direction is already clear, especially for Re...
clawhub install web-developmentπ About This Skill
name: web-development description: Use when users need to implement, integrate, debug, build, deploy, or validate a Web frontend after the product direction is already clear, especially for React, Vue, Vite, browser flows, or CloudBase Web integration. version: 2.18.0 alwaysApply: false
Standalone Install Note
If this environment only installed the current skill, start from the CloudBase main entry and use the published cloudbase/references/... paths for sibling skills.
https://cnb.cool/tencent/cloud/cloudbase/cloudbase-skills/-/git/raw/main/skills/cloudbase/SKILL.mdhttps://cnb.cool/tencent/cloud/cloudbase/cloudbase-skills/-/git/raw/main/skills/cloudbase/references/web-development/SKILL.mdKeep local references/... paths for files that ship with the current skill directory. When this file points to a sibling skill such as auth-tool or web-development, use the standalone fallback URL shown next to that reference.
Web Development
Activation Contract
Use this first when
Read before writing code if
ui-design first.Then also read
frameworks.mdbrowser-testing.md../auth-tool/SKILL.md (standalone fallback: https://cnb.cool/tencent/cloud/cloudbase/cloudbase-skills/-/git/raw/main/skills/cloudbase/references/auth-tool/SKILL.md), then ../auth-web/SKILL.md (standalone fallback: https://cnb.cool/tencent/cloud/cloudbase/cloudbase-skills/-/git/raw/main/skills/cloudbase/references/auth-web/SKILL.md)Do NOT use for
Common mistakes / gotchas
When to use this skill
Use this skill for Web engineering work such as:
Do NOT use for:
ui-designminiprogram-developmentcloudrun-development or cloud-functionsHow to use this skill (for a coding agent)
1. Clarify the execution surface - Confirm whether the task is framework setup, page implementation, debugging, deployment, validation, or CloudBase integration. - Keep the work scoped to the actual Web app surface instead of spreading into unrelated backend changes. - If the workspace is an existing application with TODOs, treat it as a targeted repair task, not a greenfield build.
2. Follow framework and build conventions
- Prefer the existing project stack if one already exists.
- For new work, treat Vite as the default bundler unless the repo or user constraints say otherwise.
- Put reusable app code under src and build output under dist unless the repo already uses a different convention.
- In an existing application with fixed structure, inspect the files that already own the flow before reading broad docs: src/lib/backend.*, src/lib/auth.*, src/lib/*service.*, route guards, and the page handlers bound to submit buttons.
3. Validate through the browser, not only by reading code
- For interaction, routing, rendering, or regression checks, use agent-browser workflows from browser-testing.md.
- Prefer lightweight smoke validation for changed flows before claiming the frontend work is complete.
4. Treat CloudBase as an integration branch
- Use CloudBase Web SDK and static hosting guidance only when the project actually needs CloudBase platform features.
- Reuse auth-tool and auth-web for login or provider readiness instead of re-describing those flows here.
Core workflow
1. Choose the right engineering path
2. Keep implementation grounded in project reality
3. Validate changed flows explicitly
CloudBase Web integration
Use this section only when the Web project needs CloudBase platform features.
Web SDK rules
app or auth instance instead of re-initializing on every callEnvId before writing SDK init code, console links, or config files. Do not pass alias-like short forms directly into cloudbase.init({ env }).Authentication boundary
auth-tool and auth-webStatic hosting defaults
CloudBase quick start
// npm install @cloudbase/js-sdk
import cloudbase from "@cloudbase/js-sdk";const app = cloudbase.init({
env: "your-full-env-id", // Canonical full CloudBase environment ID resolved from envQuery or the console
});
const auth = app.auth();