From Claude DB
Audits database naming conventions for consistency, reserved words, FK patterns, boolean prefixes, and opaque identifiers. Useful for schema reviews and design quality checks.
How this skill is triggered — by the user, by Claude, or both
Slash command
/claude-db:db-namingThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Naming is the schema's documentation: consistent, predictable identifiers make joins obvious and reduce the quoting/casing bugs that creep in across ORMs and engines. It is low-weight (Naming category, design axis) — real but never the headline. This module is **design**-axis and never caps.
Naming is the schema's documentation: consistent, predictable identifiers make joins obvious and reduce the quoting/casing bugs that creep in across ORMs and engines. It is low-weight (Naming category, design axis) — real but never the headline. This module is design-axis and never caps.
snake_case and camelCase, or singular and plural table names (user, orders, OrderItem) in one schema — pick one and hold it.user, order, group, select) or that rely on case ("User" quoted) — Postgres folds unquoted to lowercase, MySQL is filesystem/case-config dependent; mixed quoting causes "relation does not exist" bugs.<referenced>_id pattern, so joins aren't self-evident.is_/has_/can_, or negative names (not_active) that invert logic.data, info, value, flag, temp, col1, abbreviations without a glossary, or timestamps not suffixed _at.warn.warn, fixable: proposed (rename is high-blast-radius — never auto)._at suffix: severity 1, warn.Parse DDL/snapshot via scripts/parse-schema.mjs: tally identifier casing styles and table pluralization; match identifiers against a reserved-word list per engine; check FK columns against the <table>_id pattern; flag boolean columns without is_/has_/can_ and opaque names. This is fully static and directional.
Confirm live identifier inventory and quoting:
-- $DATABASE_URL, read-only
SELECT table_name, column_name FROM information_schema.columns
WHERE table_schema NOT IN ('pg_catalog','information_schema')
ORDER BY table_name; -- inspect casing/plurality/reserved words across the real catalog
Emit per schema/finding.schema.json. Examples:
M7.schema.mixed_casing — schema mixes snake_case and camelCase identifiers (severity 2, warn, axis design, fixable: proposed).M7.user.reserved_word_table — table named user requires quoting and breaks unquoted refs (severity 2, warn, axis design).M7.accounts.active_boolean_unprefixed — boolean active not named is_active (severity 1, warn).
Each finding: evidence.observed quotes the identifier(s) verbatim; verification.reproduce is the runnable query above (method: ddl_parse / schema_introspect); expected_impact is banded (typically low) + confidence directional with rationale.proposed/advisory, never auto.npx claudepluginhub hainrixz/claude-db --plugin claude-dbProvides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Searches MemPalace before answering questions about past work, people, projects, or prior decisions. Returns verbatim stored content instead of guessing from model memory.