Coding standards template library for AI coding assistants. Auto-detect tech stack and generate project-specific rules.
npx claudepluginhub lifedever/claude-rulesInitialize or update CLAUDE.md coding standards for any project by auto-detecting tech stack and assembling rules from the claude-rules template library. Use when user says 'init rules', 'generate CLAUDE.md', or wants to set up coding standards.
Official prompts.chat marketplace - AI prompts, skills, and tools for Claude Code
Behavioral guidelines to reduce common LLM coding mistakes, derived from Andrej Karpathy's observations
Claude Code plugins for the Slidev presentation framework
Share bugs, ideas, or general feedback.
English | 中文
Coding standards template library for AI coding assistants. Combine base + language + framework layers to generate a project-specific rules file that keeps AI-generated code clean and consistent.
AI coding assistants tend to mimic existing code style in legacy projects — including bad habits. The core principle of this library:
Don't imitate legacy code. Refactor according to the standards.
Every rule is a concrete, actionable directive (not vague "use proper XX"), with "Bad / Good" code comparison examples.
claude-rules/
├── base/ # Universal (required)
│ ├── core.md # Core principles: legacy code attitude, quality metrics, naming, architecture
│ └── git.md # Git commit message conventions
│
├── languages/ # Pick by language
│ ├── typescript.md # No any/enum/barrel exports, as const, import type
│ ├── javascript.md # ES2022+, JSDoc type annotations, ESM only
│ ├── java.md # Java 17+ record/sealed/pattern matching, Optional
│ ├── kotlin.md # Null safety, structured concurrency, sealed class
│ ├── swift.md # guard let, async/await, actor, Protocol
│ ├── python.md # ruff, type annotations, Protocol, uv/poetry
│ ├── html.md # Semantic tags, accessibility, no div soup
│ ├── css.md # Custom properties, Flexbox/Grid, BEM, modern features
│ ├── go.md # Error wrapping, small interfaces, structured concurrency
│ └── rust.md # Ownership/borrowing, thiserror/anyhow, iterators, Clippy
│
└── frameworks/ # Pick by framework
├── vue.md # script setup, ref vs reactive, composable patterns
├── react.md # Hooks rules, correct useEffect, state layering
├── swiftui.md # @Observable (not legacy ObservableObject), SwiftData
├── springboot.md # Layered architecture, DTO, global exception handling
└── tauri.md # Command design, service encapsulation, security config
┌─────────────────────────────────────────────┐
│ base (required) │ core.md + git.md
│ Legacy code attitude / Quality metrics / │ Applies to all projects
│ Naming / Architecture │
├─────────────────────────────────────────────┤
│ language (pick) │ typescript.md / java.md / ...
│ Type system / Naming conventions / │ Based on project language
│ Language-specific features │
├─────────────────────────────────────────────┤
│ framework (pick) │ vue.md / react.md / ...
│ Component standards / State management / │ Based on project framework
│ Architecture patterns │
└─────────────────────────────────────────────┘
Rule priority: framework > language > base (specific rules override general rules)
# Step 1: Add the marketplace
claude plugin marketplace add lifedever/claude-rules
# Step 2: Install the plugin
claude plugin install init-claude-rules@claude-rules
# Step 3: Restart Claude Code
Open any project in Claude Code and run:
/init-rules
The plugin will:
CLAUDE.md in your project rootWhen new rules are added upstream, update the local cache:
claude plugin marketplace update claude-rules
Then restart Claude Code. To apply updated rules to a project that already has CLAUDE.md, run /init-rules again — the plugin will ask before overwriting.
claude plugin uninstall init-claude-rules@claude-rules
claude plugin marketplace remove claude-rules
Clone this repo and concatenate the rule files you need:
git clone https://github.com/lifedever/claude-rules.git
cd claude-rules
# Example: Vue 3 + TypeScript project
cat base/core.md base/git.md languages/typescript.md frameworks/vue.md > /path/to/project/CLAUDE.md
The rules are plain Markdown and work with any AI coding tool. Just place the output where your tool expects: