SplatDev.Umbraco.Plugins.Yaml2Schema 1.1.3

dotnet add package SplatDev.Umbraco.Plugins.Yaml2Schema --version 1.1.3
                    
NuGet\Install-Package SplatDev.Umbraco.Plugins.Yaml2Schema -Version 1.1.3
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="SplatDev.Umbraco.Plugins.Yaml2Schema" Version="1.1.3" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="SplatDev.Umbraco.Plugins.Yaml2Schema" Version="1.1.3" />
                    
Directory.Packages.props
<PackageReference Include="SplatDev.Umbraco.Plugins.Yaml2Schema" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add SplatDev.Umbraco.Plugins.Yaml2Schema --version 1.1.3
                    
#r "nuget: SplatDev.Umbraco.Plugins.Yaml2Schema, 1.1.3"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package SplatDev.Umbraco.Plugins.Yaml2Schema@1.1.3
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=SplatDev.Umbraco.Plugins.Yaml2Schema&version=1.1.3
                    
Install as a Cake Addin
#tool nuget:?package=SplatDev.Umbraco.Plugins.Yaml2Schema&version=1.1.3
                    
Install as a Cake Tool

Yaml2Schema

Import YAML document type definitions into Umbraco — creates and updates content types, media types, member types, and data types from YAML files.

NuGet

Compatibility

Umbraco .NET Package Version
13.x 8.0 1.1.3
17.x 10.0 1.1.3

Installation

dotnet add package SplatDev.Umbraco.Plugins.Yaml2Schema

Quick Start

No registration call is needed. The package ships Umbraco composers, so the AddComposers() already in the default Program.cs picks the plugin up as soon as the package is referenced.

Configuration

Add to appsettings.json:

{
  "UmbracoYaml2Schema": {
    "YamlPath": "umbraco.yml",
    "RunOnStartup": false,
    "OverwriteExisting": false
  }
}
Key Type Default Description
YamlPath string umbraco.yml Path to the YAML definition file
RunOnStartup bool false Import schemas automatically on application startup
OverwriteExisting bool false Overwrite existing content types that match by alias

Usage

Place a YAML file (typically exported with Schema2Yaml) at the configured path. Use the Yaml2Schema dashboard in the Umbraco backoffice to review and import the definitions. If RunOnStartup is enabled, imports trigger automatically when the application starts.

# Example YAML structure (abbreviated)
documentTypes:
  - alias: article
    name: Article
    properties:
      - alias: title
        name: Title
        dataType: Umbraco.TextBox

Known Limitations

  • When OverwriteExisting is false, matching content types are skipped — no merge or partial update support
  • Startup imports block application startup until complete, which may impact boot time for large schemas
  • YAML format must match the structure produced by Schema2Yaml; hand-written YAML files may fail validation

Changelog

1.1.3 — 2026-08-25

Documentation only, no code change. The README's Quick Start told you to call a registration method that does not exist in this package — following it produced a compile error on the first build. There is nothing to register: the package ships Umbraco composers and the AddComposers() already in the default Program.cs finds it. The Compatibility table also now shows the version actually being shipped instead of the one it was written at.

1.1.2 — 2026-08-24

Removes a dashboard screenshot that showed an error toast. It was captured against a site where this plugin's API was unreachable, so it advertised a broken dashboard. No screenshot is better than a misleading one; a replacement will be taken against a working install.

1.1.1 — 2026-08-24

Package metadata only: the listing now carries an icon and search tags, and the project and repository links point at the organisation that actually hosts this code. No code changes.

1.1.0 — 2026-08-23

The Umbraco Marketplace listing now carries this plugin's dashboard screenshot. The listing keeps its own screenshot list rather than reading the README, and this one was empty, so the entry showed no images at all.

1.0.42 — 2026-08-22

  • The Status panel shows real state. The dashboard has always called GET /umbraco/api/Yaml2Schema/Status, but no controller existed, so the call 404'd on every load and the panel fell back to hardcoded text describing the plugin in general — it claimed an import runs on startup whether or not a YAML file was present, and never showed that one had. The endpoint now reports the configured path, whether an import is pending, and when the last one completed.

1.0.41 — 2026-08-22

  • The backoffice dashboard now appears. Its assets lived under wwwroot/App_Plugins/, which is not a path Umbraco or the static-file middleware ever serves from — every request for the manifest and the bundle returned 404, so the dashboard was unreachable on any install.
  • The plugin now embeds its App_Plugins in the assembly, serves them from there, and registers its own package manifest, matching every other plugin in this repo. It no longer depends on a buildTransitive copy step that silently does nothing when it fails.
  • Added the Umbraco.Cms.Web.Common reference the Umbraco 17 target was missing.

License

MIT © SplatDev

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (9)

Showing the top 5 NuGet packages that depend on SplatDev.Umbraco.Plugins.Yaml2Schema:

Package Downloads
SplatDev.Umbraco.Themes.Base

Umbraco Base Theme - Foundation theme with reusable components: navigation, footer, sidebar, responsive grid. Required by all other UmbracoCms themes.

SplatDev.Umbraco.Themes.Corporate

Professional corporate theme for Umbraco - home, about, services, team, contact pages

SplatDev.Umbraco.Themes.Conference

Conference/event theme for Umbraco - schedule, speakers, venue, registration, countdown

SplatDev.Umbraco.Themes.Hotel

Hotel/hospitality theme for Umbraco - rooms, booking, gallery, amenities, reviews, location map

SplatDev.Umbraco.Themes.Blog

Blog theme for Umbraco - post layout, author bio, comment section, categories sidebar, archive page

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.1.3 40 8/25/2026
Loading failed

v1.0.38: Fix auth token — revert _getToken() to getLatestToken() (getOpenApiConfiguration() has no .token, causing 401 on every API call). v1.0.37: Add umbraco-marketplace.json, dashboard, WCAG UI/UX fixes.