gskinnerteam/flutter-hatcha-app/json-schema-builder
Claude Code and agent skill by gskinnerteam/flutter-hatcha-app
- community
Checking that the SKILL.md file is still in the repository.
Dart DSL for building and validating JSON Schemas (Draft 2020-12). Use when: defining schemas with S.object, S.string, S.list, S.integer, S.number, S.boolean, S.nil, S.combined, S.any, Schema, ObjectSchema, StringSchema, ListSchema, NumberSchema, IntegerSchema, BooleanSchema, NullSchema, working with schema validation, ValidationError, SchemaRegistry, or schema composition (allOf, anyOf, oneOf, not, if/then/else).
Install
npx vskill@latest install gskinnerteam/flutter-hatcha-app/json-schema-builderSKILL.md
json_schema_builder Package — API Reference
The json_schema_builder package (v0.1.3) provides a fluent, type-safe Dart DSL for building, composing, and validating JSON Schemas compliant with Draft 2020-12. It is the schema backbone for GenUI catalogue item definitions.
When to Use
- Defining
dataSchemafor aCatalogItem - Building JSON schemas programmatically (any context)
- Working with
S.object,S.string,S.list, or other schema factories - Composing schemas with
allOf,anyOf,oneOf,not,if/then/else - Validating data against a schema
- Using
$ref/$defsfor schema reuse
DSL Quick Reference
The Schema extension type wraps Map<String, Object?> and provides factory constructors for all schema types.
Factory Constructors
| Constructor | Returns | Purpose | |
|---|---|---|---|
S.string() | StringSchema | String with optional constraints | |
S.integer() | IntegerSchema | Integer with optional range | |
S.number() | NumberSchema | Number (int or double) with optional range | |
S.boolean() | BooleanSchema | Boolean value | |
S.list() | ListSchema | Array with item schemas | |
S.object() | ObjectSchema | Object with typed properties | |
S.nil() | NullSchema | Null value | |
S.any() | Schema | No type constraint | |
S.combined() | Schema | Composition (allOf/anyOf/oneOf/not/if-then-else) | |
S.fromMap(map) | Schema | Wrap raw map | |
S.fromBoolean(bool) | Schema | true = accept all, false = reject all |
Schema Types
StringSchema
Examples:
ObjectSchema
Example:
ListSchema (Array)
Example:
NumberSchema
IntegerSchema
BooleanSchema
NullSchema
Core Schema Methods
| Method | Signature | Purpose | |
|---|---|---|---|
validate | Future<List<ValidationError>> validate(Object? data, {...}) | Validate data against schema | |
toJson | String toJson({String? indent}) | Convert to JSON string | |
value | Map<String, Object?> | Raw underlying map | |
[] | Object? operator [](String key) | Access keyword by name |
Metadata Getters
All standard JSON Schema metadata keywords are accessible as properties:
GenUI Integration
Schemas define the AI contract for CatalogItem.dataSchema. The description field in each property acts as a system prompt for the AI — be explicit about constraints.
Static display properties use rawS.*types. Editable / data-bound properties useA2uiSchemas.*references. See thegenuiskill's data-binding reference for the full decision table.
Advanced Topics
For schema composition (allOf/anyOf/oneOf/not/if-then-else), $ref/$defs, validation API, and advanced features, see advanced.md.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryChecking.github/skills/json-schema-builder/SKILL.md
Popularity
- Repository stars
- 66
- Repository forks
- 7
- 7-day trend score
- 21
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/gskinnerteam/flutter-hatcha-app/json-schema-builder)