/starter
Static web development for beginners — HTML/CSS/JS and Next.js App Router. Triggers: static website, portfolio, landing page, beginner
Claude Code
$ npx -y skills add ww-w-ai/bkit-claude-code --skill starter --agent claude-code
Codex
$ npx skills add ww-w-ai/bkit-claude-code --skill starter -a codex -y
Cursor
$ npx skills add ww-w-ai/bkit-claude-code --skill starter -a cursor -y
Gemini CLI
$ npx skills add ww-w-ai/bkit-claude-code --skill starter -a gemini-cli -y
GitHub Copilot
$ npx skills add ww-w-ai/bkit-claude-code --skill starter -a github-copilot -y
OpenCode
$ npx skills add ww-w-ai/bkit-claude-code --skill starter -a opencode -y
Windsurf
$ npx skills add ww-w-ai/bkit-claude-code --skill starter -a windsurf -y
SKILL.md
starter.SKILL.mdname: starter
classification: capability
classification-reason: Pattern guidance may overlap with model's built-in knowledge as it improves
deprecation-risk: medium
effort: medium
description: |
Static web development for beginners — HTML/CSS/JS and Next.js App Router.
Triggers: static website, portfolio, landing page, beginner
argument-hint: "[init|guide|help]"
agent: bkit:starter-guide
allowed-tools:
- Read
- Write
- Edit
- Glob
- Grep
- WebSearch
- WebFetch
user-invocable: true
imports:
- ${PLUGIN_ROOT}/templates/design-starter.template.md
next-skill: phase-1-schema
pdca-phase: plan
task-template: "[Init-Starter] {feature}"Beginner (Starter) Skill
Actions
| Action | Description | Example | |--------|-------------|---------| | `init` | Project initialization (/init-starter feature) | `/starter init my-portfolio` | | `guide` | Display development guide | `/starter guide` | | `help` | Beginner help | `/starter help` |
init (Project Initialization)
1. Create project directory structure (HTML/CSS/JS or Next.js) 2. Generate package.json (when Next.js selected) 3. Create CLAUDE.md (Level: Starter specified) 4. Create docs/ folder structure (for PDCA documents) 5. Initialize the pipeline store — `writeBkitMemory()` in `lib/pdca/status.js`, which writes `.bkit/state/memory.json` (the migrated path of `.bkit-memory.json`). This holds the project level and the 9-phase `pipelineStatus`, read by the pipeline Stop hooks for phases 5, 6 and 9. It is NOT where the PDCA phase lives — that is `.bkit/state/pdca-status.json`.
guide (Development Guide)
- Analyze current project state
- Suggest next steps appropriate for Starter level
- Phase 1-3 focused Pipeline guide
help (Beginner Help)
- Explain HTML/CSS/JS basic concepts
- Answer frequently asked questions
- Provide example code
Target Audience
- Those learning programming for the first time
- Those who want to create a simple website
- Those who need a portfolio site
Tech Stack
Option A: Pure HTML/CSS/JS (For Complete Beginners)
HTML5 → Web page structure
CSS3 → Styling
JavaScript → Dynamic features (optional)
Option B: Next.js (Using Framework)
Next.js 14+ → React-based framework
Tailwind CSS → Utility CSS
TypeScript → Type safety (optional)
Language Tier Guidance (v1.3.0)
> **Recommended**: Tier 1 languages only (Python, TypeScript, JavaScript) > > Starter level focuses on AI-Native development with maximum AI tool support.
| Tier | Allowed | Reason | |------|---------|--------| | Tier 1 | ✅ Yes | Full AI support, Vibe Coding optimized | | Tier 2 | ⚠️ Limited | Consider Dynamic level instead | | Tier 3-4 | ❌ No | Upgrade to Dynamic/Enterprise |
Project Structure
Option A: HTML/CSS/JS
project/
├── index.html # Main page
├── about.html # About page
├── css/
│ └── style.css # Styles
├── js/
│ └── main.js # JavaScript
├── images/ # Image files
├── docs/ # PDCA documents
│ ├── 01-plan/
│ └── 02-design/
└── README.md
Option B: Next.js
project/
├── src/
│ ├── app/
│ │ ├── layout.tsx # Common layout
│ │ ├── page.tsx # Main page
│ │ └── about/
│ │ └── page.tsx # About page
│ └── components/ # Reusable components
├── public/ # Static files
├── docs/ # PDCA documents
├── package.json
├── tailwind.config.js
└── README.md
Core Concept Explanations
HTML (Web Page Structure)
<!-- Basic structure -->
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>My Website</title>
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<header>Header</header>
<main>Main content</main>
<footer>Footer</footer>
</body>
</html>CSS (Styling Web Pages)
/* Basic styles */
body {
font-family: 'Inter', sans-serif;
margin: 0;
padding: 0;
}
/* Center alignment */
.container {
max-width: 1200px;
margin: 0 auto;
padding: 20px;
}
/* Responsive (mobile support) */
@media (max-width: 768px) {
.container {
padding: 10px;
}
}Next.js App Router (Creating Pages)
// app/page.tsx - Main page
export default function Home() {
return (
<main className="container mx-auto p-4">
<h1 className="text-3xl font-bold">
Welcome!
</h1>
</main>
);
}
// app/about/page.tsx - About page
// URL: /about
export default function About() {
return (
<div className="container mx-auto p-4">
<h1>About</h1>
<p>I am ...</p>
</div>
);
}Tailwind CSS (Quick Styling)
// Frequently used classes
<div className="
container // Center alignment
mx-auto // Auto left/right margin
p-4 // Padding 16px
text-center // Center text
text-xl // Large text
font-bold // Bold text
bg-blue-500 // Blue background
text-white // White text
rounded-lg // Rounded corners
hover:bg-blue-600 // Color change on hover
">
Deployment Methods
GitHub Pages (Free)
1. Create GitHub repository
2. Push code
3. Settings → Pages → Source: main branch
4. Access at https://username.github.io/repo-name
Vercel (Recommended for Next.js)
1. Sign up at vercel.com (GitHub integration)
2. "New Project" → Select repository
3. Click "Deploy"
4. URL automatically generated
Limitations
❌ Login/Registration (requires server)
❌ Data storage (requires database)
❌ Admin pages (requires backend)
❌ Payment features (requires backend)
When to Upgrade
Move to **Dynamic Level** if you need:
→ "I need login functionality"
→ "I want to store data"
→ "I need an admin page"
→ "I want users to communicate with each other"
bkit Features for Starter Level (v1.5.1)
Output Style: bkit-learning (Recommended)
For the best learning experience, activate the learni
Read more
name: starter
classification: capability
classification-reason: Pattern guidance may overlap with model's built-in knowledge as it improves
deprecation-risk: medium
effort: medium
description: |
Static web development for beginners — HTML/CSS/JS and Next.js App Router.
Triggers: static website, portfolio, landing page, beginner
argument-hint: "[init|guide|help]"
agent: bkit:starter-guide
allowed-tools:
- Read
- Write
- Edit
- Glob
- Grep
- WebSearch
- WebFetch
user-invocable: true
imports:
- ${PLUGIN_ROOT}/templates/design-starter.template.md
next-skill: phase-1-schema
pdca-phase: plan
task-template: "[Init-Starter] {feature}"Beginner (Starter) Skill
Actions
| Action | Description | Example | |--------|-------------|---------| | `init` | Project initialization (/init-starter feature) | `/starter init my-portfolio` | | `guide` | Display development guide | `/starter guide` | | `help` | Beginner help | `/starter help` |
init (Project Initialization)
1. Create project directory structure (HTML/CSS/JS or Next.js) 2. Generate package.json (when Next.js selected) 3. Create CLAUDE.md (Level: Starter specified) 4. Create docs/ folder structure (for PDCA documents) 5. Initialize the pipeline store — `writeBkitMemory()` in `lib/pdca/status.js`, which writes `.bkit/state/memory.json` (the migrated path of `.bkit-memory.json`). This holds the project level and the 9-phase `pipelineStatus`, read by the pipeline Stop hooks for phases 5, 6 and 9. It is NOT where the PDCA phase lives — that is `.bkit/state/pdca-status.json`.
guide (Development Guide)
- Analyze current project state
- Suggest next steps appropriate for Starter level
- Phase 1-3 focused Pipeline guide
help (Beginner Help)
- Explain HTML/CSS/JS basic concepts
- Answer frequently asked questions
- Provide example code
Target Audience
- Those learning programming for the first time
- Those who want to create a simple website
- Those who need a portfolio site
Tech Stack
Option A: Pure HTML/CSS/JS (For Complete Beginners)
HTML5 → Web page structure CSS3 → Styling JavaScript → Dynamic features (optional)
Option B: Next.js (Using Framework)
Next.js 14+ → React-based framework Tailwind CSS → Utility CSS TypeScript → Type safety (optional)
Language Tier Guidance (v1.3.0)
> **Recommended**: Tier 1 languages only (Python, TypeScript, JavaScript) > > Starter level focuses on AI-Native development with maximum AI tool support.
| Tier | Allowed | Reason | |------|---------|--------| | Tier 1 | ✅ Yes | Full AI support, Vibe Coding optimized | | Tier 2 | ⚠️ Limited | Consider Dynamic level instead | | Tier 3-4 | ❌ No | Upgrade to Dynamic/Enterprise |
Project Structure
Option A: HTML/CSS/JS
project/ ├── index.html # Main page ├── about.html # About page ├── css/ │ └── style.css # Styles ├── js/ │ └── main.js # JavaScript ├── images/ # Image files ├── docs/ # PDCA documents │ ├── 01-plan/ │ └── 02-design/ └── README.md
Option B: Next.js
project/ ├── src/ │ ├── app/ │ │ ├── layout.tsx # Common layout │ │ ├── page.tsx # Main page │ │ └── about/ │ │ └── page.tsx # About page │ └── components/ # Reusable components ├── public/ # Static files ├── docs/ # PDCA documents ├── package.json ├── tailwind.config.js └── README.md
Core Concept Explanations
HTML (Web Page Structure)
<!-- Basic structure -->
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>My Website</title>
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<header>Header</header>
<main>Main content</main>
<footer>Footer</footer>
</body>
</html>CSS (Styling Web Pages)
/* Basic styles */
body {
font-family: 'Inter', sans-serif;
margin: 0;
padding: 0;
}
/* Center alignment */
.container {
max-width: 1200px;
margin: 0 auto;
padding: 20px;
}
/* Responsive (mobile support) */
@media (max-width: 768px) {
.container {
padding: 10px;
}
}Next.js App Router (Creating Pages)
// app/page.tsx - Main page
export default function Home() {
return (
<main className="container mx-auto p-4">
<h1 className="text-3xl font-bold">
Welcome!
</h1>
</main>
);
}
// app/about/page.tsx - About page
// URL: /about
export default function About() {
return (
<div className="container mx-auto p-4">
<h1>About</h1>
<p>I am ...</p>
</div>
);
}Tailwind CSS (Quick Styling)
// Frequently used classes <div className=" container // Center alignment mx-auto // Auto left/right margin p-4 // Padding 16px text-center // Center text text-xl // Large text font-bold // Bold text bg-blue-500 // Blue background text-white // White text rounded-lg // Rounded corners hover:bg-blue-600 // Color change on hover ">
Deployment Methods
GitHub Pages (Free)
1. Create GitHub repository 2. Push code 3. Settings → Pages → Source: main branch 4. Access at https://username.github.io/repo-name
Vercel (Recommended for Next.js)
1. Sign up at vercel.com (GitHub integration) 2. "New Project" → Select repository 3. Click "Deploy" 4. URL automatically generated
Limitations
❌ Login/Registration (requires server) ❌ Data storage (requires database) ❌ Admin pages (requires backend) ❌ Payment features (requires backend)
When to Upgrade
Move to **Dynamic Level** if you need:
→ "I need login functionality" → "I want to store data" → "I need an admin page" → "I want users to communicate with each other"
bkit Features for Starter Level (v1.5.1)
Output Style: bkit-learning (Recommended)
For the best learning experience, activate the learni
A Claude Code plugin that verifies AI-generated code against its own design specs. Three commands. Anyone — even someone vibe-coding for the first time — can ship robust, production-quality software.
Other skills on bkit.
More skills from other plugins.
agentmail
Use your assigned AgentMail inbox to read email tasks, explicitly send or reply, and check delivery. Provided automatically by…
adr-create
Create a new Architecture Decision Record with sequential numbering and AgentDB registration
Questions about starter.
- Which coding agents can use starter?
- starter installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.

