Documentation index: llms.txt. This page is also available as markdown: append .md to this URL or send Accept: text/markdown.
Custom Node Types
Coalesce comes with built-in Node Types and Packages for data transformations, and you can also create your own custom Node Types using YAML, Jinja 2, and SQL.
A custom Node Type can be YAML or SQL. Both share the same anatomy; they differ in how Nodes of the type are configured:
- YAML Node Types declare config items that render as mapping-grid and panel controls. Best for persistent, curated patterns. Follow the Node Definition path.
- SQL Node Types declare annotations that Node authors write directly in their SQL. Best for SQL-first, transformation-heavy patterns. Follow the Defining a SQL Node Type path.
Not sure which to build on? See Choosing Between YAML and SQL Node Types.
To make your own Node Type, go to Build Settings > Node Types and select Create Node Type to start from scratch, choosing Node V1 (YAML) or Node V2 (SQL), or Duplicate on any Node Type to extend existing functionality.
Learn About the Components of a Node Type
Before building, review our guides on each part of a Node Type and how they work together.
Every Node Type of either kind consists of these components:
- Node Definition - Written in YAML. On a YAML Node Type it specifies UI elements and configurations like node color, materialization options, and business keys; on a SQL Node Type it declares the type's annotations instead.
- Create Template - Defines the table's structure (DDL).
- Run Template - Defines how the table will be populated with data (DML).
- Hydrated Metadata - An object that contains all the structured information needed to define a Node in Coalesce. Templates on both kinds read from it.
- Macros - A block of code you can define once to use multiple times. They can be used in the Create or Run template.
What's Next
Defining a SQL Node Type
How to build a custom SQL Node Type in Coalesce. Create the type, declare its annotations in the definition, and write the Create and Run templates that consume them.
Annotation Declarations Reference
Reference for the annotations block in a SQL Node Type definition, including the declaration and parameter fields, repeatable annotations, and how declarations drive the Annotations panel.
Node Definition
Master Coalesce Node Definition using YAML for custom node type development and data transformation workflows. Learn to configure UI elements, materialization options, business keys, system columns, and mapping columns. Complete guide to building enterprise-grade custom nodes with advanced configuration patterns and dynamic node properties.
Node Definition Reference
Complete reference for Coalesce custom node configuration options and UI element definitions. Master materialization selectors, business key configurations, system columns, and advanced node properties for enterprise data transformation workflows. Essential guide for building custom node types with dropdown selectors, toggle buttons, and tabular configurations using YAML and Jinja templating
Create and Run Templates
Build powerful custom nodes in Coalesce using Create and Run templates for defining table structures and data population logic. Learn to implement DDL and DML operations with dynamic Jinja templating, handle platform-specific syntax for Snowflake and Databricks, create complex dimension and fact table logic, and develop reusable node templates with advanced SQL generation capabilities.
Join Templates
Master Coalesce Join Templates for custom SQL join generation and advanced node dependency management. Learn to customize JOIN string creation, implement stage-based templates for complex SQL executions, and use ref macros for dynamic node references. Essential guide for building sophisticated data transformation workflows with automated join logic and dependency handling.
Hydrated Metadata
Learn Coalesce Hydrated Metadata for custom node development and data transformation workflows. Understand metadata object structures, column definitions, source mappings, and configuration parameters. Complete guide to accessing node information, storage locations, and runtime parameters for building advanced custom node types and data pipeline automation.
Accessing Hydrated Metadata
Learn to access and utilize Coalesce's Hydrated Metadata using dot notation syntax in Jinja templates for custom node development. Master object and array navigation techniques, understand metadata structure identification, implement tabular configuration access, and create dynamic SQL templates. Essential guide for leveraging node metadata in Create and Run templates for advanced data transformation customization.
Hydrated Metadata Reference
Comprehensive reference guide for Coalesce Hydrated Metadata objects used in custom node development. Master dot notation syntax, metadata object structures, and node configuration patterns for building advanced data transformation workflows. Essential documentation for accessing column definitions, storage locations, source mappings, and configuration parameters in custom node types.
Deployment Strategies for Custom Node Types
Configure optimal deployment strategies for Coalesce custom node types using default and transient deployment options. Learn the differences between CLONE/ALTER operations in default strategy versus DROP/CREATE operations in transient strategy, understand performance implications, and choose the right deployment approach based on your data transformation requirements and change management needs.