Agent skill
data-modeling
Dimensional modeling, normalization, and schema design for analytics.
Install this agent skill to your Project
npx add-skill https://github.com/timequity/plugins/tree/main/craft-coder/data/data-modeling
SKILL.md
Data Modeling
Dimensional Modeling
Star Schema
┌─────────────┐
│ dim_date │
└──────┬──────┘
│
┌──────────┐ │ ┌──────────────┐
│dim_store │───┼───│ fct_sales │
└──────────┘ │ └──────────────┘
│
┌──────┴──────┐
│dim_product │
└─────────────┘
Fact Tables
CREATE TABLE fct_sales (
sale_id BIGINT PRIMARY KEY,
date_key INT REFERENCES dim_date(date_key),
store_key INT REFERENCES dim_store(store_key),
product_key INT REFERENCES dim_product(product_key),
quantity INT,
unit_price DECIMAL(10,2),
total_amount DECIMAL(10,2),
_loaded_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
Dimension Tables
CREATE TABLE dim_product (
product_key INT PRIMARY KEY,
product_id VARCHAR(50), -- Natural key
name VARCHAR(255),
category VARCHAR(100),
subcategory VARCHAR(100),
brand VARCHAR(100),
-- SCD Type 2 fields
valid_from DATE,
valid_to DATE,
is_current BOOLEAN
);
SCD Types
| Type | Description | Use Case |
|---|---|---|
| Type 1 | Overwrite | Corrections |
| Type 2 | New row + versioning | Track history |
| Type 3 | Previous value column | Limited history |
Normalization
| Form | Rule |
|---|---|
| 1NF | Atomic values, no repeating groups |
| 2NF | 1NF + no partial dependencies |
| 3NF | 2NF + no transitive dependencies |
Naming Conventions
dim_prefix for dimensionsfct_prefix for factsstg_prefix for stagingint_prefix for intermediate- Snake_case for columns
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
claude-code-course
Learn Claude Code in 5 hands-on lessons. From basics to building applications. Use when: user wants to learn Claude Code, asks "how do I...", or is new. Triggers: "learn", "teach me", "how does this work", "I'm new", "course".
foundations
Claude Code basics for new users. Covers essential concepts and commands. Use when: user is new to Claude Code or routed here by learning-path assessment.
advanced
Claude Code mastery for power users. Build agents, MCP servers, publish plugins. Use when: user wants to create agents, build integrations, or publish plugins.
lessons
Lesson content for Claude Code Course. Use when: loading lesson content. Internal skill - contains lesson files.
intermediate
Claude Code customization for comfortable users. Covers skills, commands, MCP, hooks. Use when: user knows basics and wants to customize Claude Code.
course-help
Help and navigation for Claude Code Course. Use when: user asks about the course, lessons, or progress. Triggers: "help", "course help", "what lessons", "my progress".
Didn't find tool you were looking for?