Skip to content
Productivity
Skill

/datamodellm

Create visual data models for database schemas using Nimbalyst's DataModelLM editor. Use when the user wants to design a data model, database schema, entity relationship diagram, or Prisma schema.

From plugin
nimbalyst
2.1k16 skills3 agents54 commands3 MCP

Claude Code

$ npx -y skills add nimbalyst/nimbalyst --skill datamodellm --agent claude-code

SKILL.md

datamodellm.SKILL.md
name: datamodellm
description: Create visual data models for database schemas using Nimbalyst's DataModelLM editor. Use when the user wants to design a data model, database schema, entity relationship diagram, or Prisma schema.

DataModelLM - Visual Data Modeling

DataModelLM is Nimbalyst's visual editor for creating database schemas using Prisma format. It displays entity-relationship diagrams with a visual canvas.

When to Use DataModelLM

  • Designing database schemas
  • Creating entity relationship diagrams (ERDs)
  • Planning data models for applications
  • Working with Prisma schemas
  • Any visual data modeling task

File Format

  • **Extension**: `.prisma`
  • **Format**: Prisma schema with special metadata header
  • **Location**: Any directory (commonly workspace root or `models/`, `schema/`)

Required Header

Every DataModelLM file MUST start with a `@nimbalyst` metadata comment:

// @nimbalyst {"viewport":{"x":0,"y":0,"zoom":1},"positions":{},"entityViewMode":"standard"}

Basic Structure

// @nimbalyst {"viewport":{"x":0,"y":0,"zoom":1},"positions":{},"entityViewMode":"standard"}

datasource db {
  provider = "postgresql"
  url      = env("DATABASE_URL")
}

model User {
  id        Int      @id @default(autoincrement())
  email     String   @unique
  name      String?
  posts     Post[]
  createdAt DateTime @default(now())
  updatedAt DateTime @updatedAt
}

model Post {
  id        Int      @id @default(autoincrement())
  title     String
  content   String?
  published Boolean  @default(false)
  author    User     @relation(fields: [authorId], references: [id])
  authorId  Int
  createdAt DateTime @default(now())
}

Supported Types

Scalar Types

  • `Int`, `BigInt`, `Float`, `Decimal`
  • `String`, `Boolean`
  • `DateTime`, `Json`, `Bytes`

Modifiers

  • `?` - Optional field
  • `[]` - Array/list

Attributes

  • `@id` - Primary key
  • `@unique` - Unique constraint
  • `@default(value)` - Default value
  • `@updatedAt` - Auto-update timestamp
  • `@relation` - Define relationships

Relationship Patterns

One-to-Many

model User {
  posts Post[]
}
model Post {
  author   User @relation(fields: [authorId], references: [id])
  authorId Int
}

One-to-One

model User {
  profile Profile?
}
model Profile {
  user   User @relation(fields: [userId], references: [id])
  userId Int  @unique
}

Many-to-Many (Implicit)

model Post {
  categories Category[]
}
model Category {
  posts Post[]
}

Best Practices

1. **Always include the @nimbalyst header** - Required for visual editor 2. **Use meaningful model names** - PascalCase, singular (User not Users) 3. **Include timestamps** - Add createdAt and updatedAt to most models 4. **Define explicit relations** - Always specify @relation with fields and references

Read more
@nimbalyst
Ships withnimbalyst

Nimbalyst - The open-source visual workspace for Claude Code, Codex, and OpenCode. Run multiple coding agents in parallel, edit their work visually in markdown, mockups, and diagrams, and track tasks. Free, MIT-licensed desktop app for macOS, Windows, Linux, with mobile companion for iOS and Android.

2.1k16 skills3 agents3 MCP
Get the whole plugin

Stars on GitHub

Momentum

stars in total
2.1k
Star history of nimbalyst/nimbalyst on GitHub, a chart by star-history.com

Other skills on nimbalyst.

animation

animation

Author animated technical explainer diagrams as .anim.json files for Nimbalyst's Animation editor. Use when the user wants to…

@nimbalyst@nimbalystInstall Skill
canvas

canvas

Author Nimbalyst Project Canvas boards (.canvas files) — an infinite canvas whose cards are live editors for real workspace files…

@nimbalyst@nimbalystInstall Skill
git-commit

git-commit

Create git commits using Nimbalyst's interactive commit proposal widget. ONLY use when the user explicitly clicks "Commit with…

@nimbalyst@nimbalystInstall Skill
excalidraw

excalidraw

Create diagrams and visual drawings using Excalidraw (.excalidraw files). Use when the user wants flowcharts, architecture…

@nimbalyst@nimbalystInstall Skill
extension-development

extension-development

Build, install, and hot-reload Nimbalyst extensions using MCP tools. Use when developing, testing, or iterating on Nimbalyst…

@nimbalyst@nimbalystInstall Skill
feedback-intake

feedback-intake

Help the user file a bug report or feature request for Nimbalyst. Activates when the user opens the in-app feedback flow or runs…

@nimbalyst@nimbalystInstall Skill

More skills from other plugins.

i-have-adhd

i-have-adhd

Shape output for a reader with ADHD: lead with the next action, number multi-step work, restate state across turns, suppress…

@ayghri@ayghriInstall Skill
ab-test-analysis

ab-test-analysis

Analyze A/B test results with statistical significance, sample size validation, confidence intervals, and ship/extend/stop…

@phuryn@phurynInstall Skill
distilly

distilly

Set up the owner profile so a personal agent knows who it works for (first-run setup, \"get to know me\"), or distill colleague,…

Questions about datamodellm.

Which coding agents can use datamodellm?
datamodellm installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.