0Pricing
Vibe Coding · 课时

指定技术与风格

固定框架、约定和格式

指定技术与风格 是 CoddyKit 上的免费 Vibe Coding 课时。 这是第 4 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Vibe Coding 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Vibe Coding 课程共包含 4 节课。

本课时的部分内容尚未翻译,以英文显示。

Pin the Tech, Pin the Style

Ask AI to "build a contact form" and you might get React, or jQuery, or plain HTML — with tabs or spaces, semicolons or not, in a style nothing like your project. The fix is to specify the tech and style up front.

When you pin the framework, conventions and formatting, AI produces code that drops straight into your codebase instead of fighting it.

Name Your Stack Explicitly

The single biggest win: state your tech stack. Don't make the AI guess. Say the language, framework, and any key libraries by name.

  • "Use React with functional components and hooks."
  • "Plain HTML, CSS and vanilla JavaScript — no frameworks."
  • "Node.js with Express for the backend."

One sentence here saves you from rewriting an answer built on the wrong tools.

Build a contact form. Stack: plain HTML and vanilla JavaScript only, no frameworks, no libraries. The form has name, email and message fields and logs the values to the console on submit.

Pin the Version Too

Frameworks change a lot between versions, and AI sometimes mixes old and new patterns. If a version matters, say it.

  • "React 18 with hooks — no class components."
  • "Modern JavaScript (ES2020+), use const/let, arrow functions, async/await."
  • "Tailwind CSS v3 utility classes for styling."

This stops the AI from handing you outdated syntax that won't run in your setup.

Use modern JavaScript (ES2020+): const/let only, arrow functions, async/await, optional chaining where useful. No var, no callbacks-with-nested-callbacks. Write a function that fetches /api/quote and returns the quote text.

Specify Conventions

Beyond the framework, tell the AI your conventions — the small choices that keep a codebase consistent:

  • Naming: camelCase for variables, PascalCase for components.
  • File structure: "one component per file."
  • Comments: "a one-line comment above each function."
  • Error handling: "return null on failure, never throw."

These are exactly the things that make code feel like yours.

Conventions for this project:
- camelCase for variables and functions
- one-line comment above each function describing what it returns
- return null on failure instead of throwing

Write getInitials(fullName) that returns the uppercase initials, e.g. 'Ada Lovelace' -> 'AL'.

Style in Action

When you pin conventions, the output is predictable and clean. Here's code matching the conventions from the last scene: camelCase, a comment, and a null return on bad input.

Run it to see it handle a normal name and a blank one.

// Returns the uppercase initials of a full name, or null if empty
function getInitials(fullName) {
  if (!fullName) return null;
  return fullName
    .split(' ')
    .filter(Boolean)
    .map((word) => word[0].toUpperCase())
    .join('');
}

console.log(getInitials('Ada Lovelace'));
console.log(getInitials(''));

Match an Existing Codebase

When you join or grow a project, the goal is code that looks like the rest. The easiest way: paste a representative file and say "match this style." The AI infers your conventions from the sample.

In Cursor and Claude Code this is even easier — the AI reads your files directly, so you can say "follow the patterns in this folder."

Here is a typical file from our project. Match its imports, naming, comment style and formatting exactly when writing new code.

[paste an existing component or module here]

Now add a new function deleteItem(id) consistent with this file.

Save Rules in a Config File

Repeating your stack and style every prompt is tedious. AI editors let you set it once:

  • Cursor: a .cursorrules file.
  • Claude Code: a CLAUDE.md file.
  • GitHub Copilot: repository custom instructions.

Put your stack, conventions and never-list there and every prompt inherits them automatically — no copy-paste.

# .cursorrules (or CLAUDE.md)
Stack: React 18 + TypeScript, Tailwind CSS v3.
Conventions:
- Functional components and hooks only.
- One component per file, PascalCase filename.
- Prefer async/await over .then().
Never: use class components, add new dependencies without asking.

Specify Formatting

Formatting matters when you paste AI code next to your own. Tell the AI to match your formatter so you don't get noisy diffs:

  • "2-space indentation."
  • "Single quotes, semicolons at line ends."
  • "Follow Prettier defaults."

Better yet, if your project uses Prettier or ESLint, just say so — the AI knows those conventions and will follow them.

Format all code with 2-space indentation, single quotes, and semicolons (Prettier defaults). Follow our ESLint rules: no unused variables, prefer const. Write a small utility clamp(value, min, max).

Style for App Builders

Prompt-to-app tools also respond to style direction. In v0, Bolt or Lovable, describe the visual stack and feel, not just the logic:

  • "Use Tailwind, a clean minimal look, rounded corners, lots of whitespace."
  • "Dark theme, purple accent color, sans-serif font."
  • "Match the style of Linear / Stripe / Notion."

Naming a familiar product as a style reference is a powerful shortcut.

Build a pricing page in v0. Stack: React + Tailwind. Style: clean and minimal like Stripe, lots of whitespace, rounded-xl cards, a single purple accent color, and a dark mode toggle. Three pricing tiers in a row.

Avoid Mixed or Conflicting Tech

One trap: vague prompts make AI mix stacks — React components glued to jQuery, or modern and old syntax in one file. The result runs poorly and confuses future edits.

Prevent it by being explicit and adding a never-list:

  • "No jQuery."
  • "Don't mix CSS frameworks — Tailwind only."
  • "Stick to the stack above; don't introduce new tools."
Stack: React + Tailwind only.
Never: use jQuery, add a second CSS framework, or pull in a UI library like Bootstrap.
If you think another tool is needed, ask me first instead of adding it.
Task: build a collapsible FAQ accordion.

Your Stack-and-Style Template

Wrap it all into a reusable opener you paste (or store in a config file) for serious builds:

  • Stack: language, framework, versions.
  • Conventions: naming, structure, error handling.
  • Formatting: indentation, quotes, linter.
  • Never: forbidden tools and patterns.

With this in place, AI output stops surprising you — it just fits.

STACK: Vanilla JS + HTML/CSS, ES2020+, no frameworks.
CONVENTIONS: camelCase, one function per job, comment above each function, return null on failure.
FORMATTING: 2-space indent, single quotes, semicolons.
NEVER: add libraries, use var, edit unrelated files.
TASK: <describe the feature here>

Quick Check

You keep retyping your stack and conventions in every prompt. Across a real project, what's the best way to make AI follow them automatically?

Recap: Make AI Build It Your Way

You learned to control exactly how AI builds:

  • Name the stack — language, framework, and versions.
  • Specify conventions — naming, structure, error handling.
  • Pin formatting — indentation, quotes, linter rules.
  • Match existing code by pasting a sample or pointing at files.
  • Save it once in .cursorrules / CLAUDE.md and add a never-list.

That's the full Prompt Engineering for Code toolkit: roles, examples, decomposition, and now precise tech and style. You're prompting like a pro.

常见问题解答

「指定技术与风格」课时是免费的吗?

是的 — 「指定技术与风格」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Vibe Coding 课程的其余内容,请升级到 CoddyKit PRO。 Vibe Coding 课程共包含 4 节课。

「指定技术与风格」这节课中我会学到什么?

固定框架、约定和格式 你通过在浏览器中直接运行的动手代码来练习 Vibe Coding,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Vibe Coding 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Vibe Coding 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 4 节课,共 4 节。

「指定技术与风格」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Vibe Coding 课中编写并运行代码吗?

能。每节 Vibe Coding 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 角色与约束
  2. 少样本示例
  3. 将大任务拆分为多个步骤
  4. 指定技术与风格
← 返回 Vibe Coding