Claude-skill-registry-data maker

Generate .NET Core data API code from model definitions using the Maker XML specification and CLI. Use when users need to: (1) Create Maker XML models from JSON objects, SQL scripts, or database schemas, (2) Generate .NET Core CRUD API endpoints from Maker XML, (3) Understand or validate Maker XML model definitions, or (4) Work with the Maker CLI tool for code generation.

install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry-data
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry-data "$T" && mkdir -p ~/.claude/skills && cp -r "$T/data/maker" ~/.claude/skills/majiayu000-claude-skill-registry-data-maker && rm -rf "$T"
manifest: data/maker/SKILL.md
source content

Maker - .NET Core Data API Code Generation

Overview

Maker transforms XML model definitions into complete .NET Core data API endpoints with full CRUD functionality. This skill helps generate Maker XML models from various sources and understand the Maker CLI workflow.

Workflow Decision Tree

Choose your workflow based on the starting point:

Starting from JSON or data model? → Use the From JSON Workflow
Starting from SQL CREATE TABLE script? → Use the From SQL Workflow
Starting from existing Maker XML? → Use the Understanding Maker XML
Need to generate code from Maker XML? → Use the CLI Generation Workflow

From JSON or Data Model

When converting JSON objects or data models to Maker XML:

  1. Read the conversion prompt: Load
    references/Prompt_to_create_Maker_XML_from_json_model.md
    to understand the conversion guidelines
  2. Read the specification: Load
    references/Maker_XML_specification.md
    for type mappings and patterns
  3. Apply the conversion logic:
    • Infer relationships from field names ending in
      Id
      ,
      ID
      , or
      _id
    • Map JSON types to Maker column types (string → text/name/label, boolean → flag, etc.)
    • Suggest property tables for type/status/state fields
    • Add appropriate filters and auto-population attributes
    • Follow Maker naming conventions (IsActive, not Active)
  4. Generate three artifacts:
    • Maker XML
      <Table>
      definition
    • Corresponding
      <View>
      definition
    • Property table initialization SQL (if applicable)

From SQL CREATE TABLE Script

When converting SQL CREATE TABLE scripts to Maker XML:

  1. Read the conversion prompt: Load
    references/Prompt_to_create_Maker_XML_from_sql_script.md
    for SQL-specific guidelines
  2. Read the specification: Load
    references/Maker_XML_specification.md
    for type mappings
  3. Apply the conversion logic:
    • Map SQL types to Maker column types
    • Identify foreign key relationships from column names
    • Improve naming where SQL uses poor conventions
    • Suggest virtual columns for views
    • Add XML comments for assumptions or complex mappings
  4. Generate three artifacts:
    • Maker XML
      <Table>
      definition
    • Corresponding
      <View>
      definition
    • Property table initialization SQL (if applicable)

Understanding Maker XML

When working with existing Maker XML or needing to understand the specification:

Read the specification: Load

references/Maker_XML_specification.md
to understand:

  • Column types (identity, text, name, label, note, integer, decimal, flag, datetime, property, uniqueid)
  • Table attributes (type, name, description, alias, view, schema, search)
  • View definitions and virtual columns
  • Property tables and relational patterns
  • Auto-population and filtering rules
  • Naming conventions and best practices

CLI Generation Workflow

When generating code from Maker XML models:

Read the CLI documentation: Load

references/MakerCLI.md
to understand:

  • Command-line syntax and arguments
  • Validation-only mode for model verification
  • Publishing workflow for deployment
  • File placement and integration requirements

Standard generation command:

MakerCLI --modelname=[Name] --publish=false --validate=true

Validation-only mode:

MakerCLI --modelname=[Name] --validate=only

This performs model validation without generating files, useful for verifying XML before generation.

Type Mapping Quick Reference

Source TypeMaker TypeNotes
id
,
guid
,
uuid
identity
or
uniqueid
identity for PKs, uniqueid for tokens
string
(short)
name
,
label
, or
text
Based on context/length
string
(medium)
note
or
text length="note"
Descriptions
string
(long)
desc
or
text length="desc"
Large text, JSON
boolean
flag
Ensure Is/Has/Want/Can prefix
number
,
integer
integer
or
decimal
Based on precision needs
date
,
datetime
datetime
Add auto/update attributes as needed
Enum/lookup fields
property
Create property table

Common Patterns

Foreign Key Relationships

When a field ends with

Id
,
ID
, or
_id
:

<Column type="integer" name="SiteID" filter="yes"/>

Property Tables (Type/Status/State)

For enumeration fields:

<Column type="property" name="Type">
  <Property name="TypeID" table="Type"/>
</Column>

With initialization SQL:

INSERT INTO Type (Code, Name, Description) VALUES 
  ('standard', 'Standard', 'Standard type'),
  ('premium', 'Premium', 'Premium type');

Auto-Populated Timestamps

<Column type="datetime" name="Created" filter="no" auto="yes" update="no"/>
<Column type="datetime" name="Updated" filter="no" auto="yes" update="yes"/>

Boolean Flags with Correct Naming

<Column type="flag" name="IsActive"/>  <!-- Correct -->
<!-- Not: <Column type="flag" name="Active"/> -->

References

This skill includes comprehensive reference documentation:

  • Maker_XML_specification.md: Complete Maker XML specification with all column types, attributes, and patterns
  • MakerCLI.md: CLI usage, commands, and workflow documentation
  • Prompt_to_create_Maker_XML_from_json_model.md: JSON-to-XML conversion guidelines
  • Prompt_to_create_Maker_XML_from_sql_script.md: SQL-to-XML conversion guidelines

Load these references as needed based on the specific conversion or generation task.