Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/GraphiteEditor/Graphite/llms.txt

Use this file to discover all available pages before exploring further.

Graphite ships with a library of built-in nodes covering vector geometry creation and modification, raster image processing, transforms, repeaters, math operations, blending, and text. Every node listed here is sourced directly from the Graphite codebase. This page is a reference overview organized by category — use the search or accordion sections below to find the node you need.
This reference is not exhaustive. The node library continues to grow with each release as new capabilities are added to Graphene, Graphite’s procedural graphics engine. Check the in-app node search for the most current set of available nodes.
These nodes generate primitive vector geometry from scratch. They produce an Item<Vector> output that can be styled with Fill and Stroke nodes, transformed, repeated, or modified by downstream vector nodes.
NodeDescriptionKey Parameters
CircleGenerates a circle shape with a chosen radius.radius (px)
EllipseGenerates an ellipse shape (an oval or stretched circle) with chosen X and Y radii.radius_x, radius_y (px)
RectangleGenerates a rectangle with chosen width and height. Optionally applies per-corner rounding.width, height (px), corner_radius, clamped
Regular PolygonGenerates a regular polygon with N sides (triangle, hexagon, n-gon, etc.) and a chosen radius.sides, radius (px)
StarGenerates an N-pointed star with separate inner and outer radii.sides, radius_1, radius_2 (px)
ArcGenerates an arc forming a portion of a circle. The arc may be open, closed, or a pie slice.radius, start_angle, sweep_angle, arc_type
SpiralGenerates a spiral that winds from an inner to an outer radius.spiral_type, turns, start_angle, inner_radius, outer_radius
ArrowGenerates an arrow shape from the origin toward a target coordinate.arrow_to, shaft_width, head_width, head_length
LineGenerates a straight line segment from the origin to a target coordinate.line_to
GridGenerates a rectangular or isometric grid of points connected by line segments.grid_type, spacing, columns, rows
QR CodeGenerates a QR code as vector geometry from the input text.text, size, error_correction, individual_squares
Box CornersBuilds a set of four corner values (e.g., for rectangle corner radii) from one to four values.values
These nodes apply visual styling — fill colors, stroke outlines, and color assignments — to vector content. They do not change the geometry itself, only its appearance.
NodeDescriptionKey Parameters
FillApplies a fill style to vector content, painting the interior of the geometry. Supports solid colors, gradients, and raster images as fill sources.content, fill
StrokeApplies a stroke style (outline) to vector content. Controls weight, alignment, cap shape, join shape, miter limit, paint order, and dash pattern.content, paint, weight, align, cap, join, miter_limit, dash_pattern
Dash PatternBuilds a stroke dash pattern from a list of alternating dash and gap lengths.lengths
Assign ColorsUniquely sets the fill and/or stroke of every vector element to individual colors sampled across a gradient, with optional randomization.content, fill, stroke, gradient, randomize, repeat_every
These nodes transform or reshape existing vector geometry. They receive a Vector input and produce a modified Vector output without changing the original style.
NodeDescriptionKey Parameters
Round CornersRounds the corners of a vector path at a given radius and roundness amount.radius, roundness, min_angle_threshold
Offset PathExpands or contracts a path by pushing all segments outward or inward by a uniform distance.distance, join, miter_limit
Solidify StrokeConverts a stroked path into a filled outline shape. Useful for exporting or further editing the stroke geometry.content
Bounding BoxReplaces the input geometry with a rectangle matching its axis-aligned bounding box.content
Separate SubpathsSplits a compound path into individual subpaths, one per list element.content
Merge by DistanceMerges nearby anchor points within a tolerance distance. Supports both spatial and topological algorithms.distance, algorithm
Auto-TangentsAutomatically constructs smooth Bézier handles for anchor points. Optionally preserves existing handles.spread, preserve_existing
SplineConverts a series of anchor points into a smooth cubic Bézier spline through all points.content
Sample PolylineConverts vector geometry into a polyline by sampling evenly spaced points along the path.spacing, separation, quantity, start_offset, stop_offset
Scatter PointsDistributes random points within a closed shape using Poisson disk sampling for even spacing.separation, seed
SimplifyReduces the number of curve segments while preserving the overall shape within a tolerance.tolerance
DecimateSamples curves to polylines then applies Ramer-Douglas-Peucker simplification to reduce point count.tolerance
Relax PointsEvens out distances between points using Lloyd’s relaxation (Voronoi-based).iterations
Jitter PointsPerturbs anchor point positions by random amounts and directions.max_distance, seed, along_normals
Offset PointsDisplaces anchor points along their normals by a set distance.distance
ExtrudeExtrudes a 2D path in a direction, creating new segments connecting the original and offset geometry.direction, joining_algorithm
Box WarpWarps vector geometry to fit inside a target quadrilateral using bilinear interpolation.content, rectangle
Cut PathCuts a path at a given progression factor, splitting it into two subpaths.progression, reverse, parameterized_distance
Cut SegmentsCuts path segments into separate disconnected pieces (one subpath per segment).content
MorphInterpolates the geometry, appearance, and transform between multiple vector layers.content, progression, distribution
These nodes extract measurement data from vector geometry, producing numeric or boolean values that can feed into other parts of the graph.
NodeDescriptionKey Parameters
DimensionsOutputs the width and height of the bounding box of the vector content as a vec2.content
Position on PathReturns the 2D position of a point at a given progression (0–1) along the path.content, progression, reverse
Tangent on PathReturns the angle of the tangent at a given progression along the path, in degrees or radians.content, progression, reverse, radians
Path is ClosedReturns true if the subpath at the given index is closed (forms a loop).content, index
Miscellaneous vector utility nodes that combine paths, map points, distribute geometry to points, or pack shapes.
NodeDescriptionKey Parameters
Combine PathsCombines every vector path across the input into a single compound path.content
Points to PolylineCreates a polyline from the anchor points in a vector, connecting them in sequence.points, closed
Map PointsApplies a per-point mapping node to each anchor point’s position in the vector geometry.content, mapped
Copy to PointsPlaces copies of the content artwork at each anchor point in a points vector, with optional random scale and rotation.points, content, random_scale_min, random_scale_max, random_rotation
Pack StripsPacks a list of shapes into rows or columns using the Best-Fit Decreasing Height algorithm.elements, separation, strip_max_length, strip_direction
Voronoi CellsBuilds a Voronoi diagram from anchor points, tessellating the plane into nearest-neighbor cells.source, connect_cells
TriangulateBuilds a Delaunay triangulation connecting anchor points into a mesh of triangles.source, connect_cells
As VectorType-asserts a value as vector data (useful for disambiguation in complex graphs).value
Flatten VectorConverts a Graphic[] to Vector[] by deeply flattening any vector content.content
Bake TransformBakes the transform attribute directly into the underlying geometry values, then removes the attribute.content
Transform nodes apply spatial operations to any kind of graphical content — vector, raster, colors, gradients, and strings. They compose on top of the item’s existing transform attribute.
NodeDescriptionKey Parameters
TransformApplies translation, rotation, scale, and skew to the input content. Composes with any existing transform.content, translation, rotation, scale, skew
Reset TransformResets selected components (translation, rotation, scale) of the input transform to default values.content, reset_translation, reset_rotation, reset_scale
Replace TransformOverwrites the entire transform of the input content with an explicitly supplied transform matrix.content, transform
Extract TransformOutputs the current transform attribute of the input content as a DAffine2 matrix.content
Invert TransformProduces the inverse of the input transform — the transform that undoes the original.transform
Decompose TranslationExtracts the translation (position) component of a transform as a vec2.transform
Decompose RotationExtracts the rotation component of a transform in degrees.transform
Decompose ScaleExtracts the scale component of a transform as a vec2, either as magnitude or pure scale.transform, scale_type
Decompose SkewExtracts the skew angle (in degrees) from a transform.transform
MirrorCreates a mirrored copy of content across an axis, optionally keeping the original alongside the copy.content, relative_to_bounds, offset, angle, keep_original
Repeat nodes create multiple copies of content arranged according to various spatial patterns. They are key to procedural design workflows.
NodeDescriptionKey Parameters
RepeatEvaluates the content node a fixed number of times, passing the loop index via context. Useful for building counted sequences.content, count, reverse
Repeat ArrayArranges copies of content in a linear array, distributing them along a direction vector with optional rotation between copies.content, direction, angle, count
Repeat RadialArranges copies of content radially around a center point at a given radius, equally spaced in angle.content, start_angle, radius, count
Repeat on PointsPlaces copies of content at each anchor point in a points vector, passing the point position via context.points, content, reverse
Copy to PointsPlaces copies of artwork at each anchor point with optional per-copy randomized scale and rotation.points, content, random_scale_min, random_scale_max, random_rotation
These nodes work with raster (pixel-based) images. Categories cover color adjustments, channel manipulation, filters, and pattern generators.Raster: Adjustment
NodeDescriptionKey Parameters
Brightness/ContrastAdjusts the brightness and contrast of an image using a standard photographic curve.brightness, contrast
LevelsRemaps the tonal range of an image by defining input black/midtone/white points and output range.input_min, input_mid, input_max, output_min, output_max
Hue/SaturationShifts the hue, adjusts the saturation, and changes the lightness of an image.hue, saturation, lightness
Black & WhiteConverts a color image to grayscale with per-channel mix controls.red, yellow, green, cyan, blue, magenta
VibranceSelectively increases saturation of muted colors while protecting already-saturated colors.vibrance, saturation
ThresholdConverts an image to pure black and white based on a luminance threshold.threshold
PosterizeReduces the number of tonal levels in each channel, creating a flat, graphic look.levels
ExposureAdjusts the exposure, offset, and gamma correction of an image.exposure, offset, gamma_correction
Channel MixerRemaps each output color channel as a weighted combination of the input RGB channels.Red/Green/Blue channel weights
Selective ColorAdjusts the CMYK composition of individual color ranges (Reds, Yellows, Greens, etc.).Per-range Cyan/Magenta/Yellow/Black
LuminanceConverts pixels to grayscale based on their luminance value.content
Gamma CorrectionApplies a gamma (power) correction curve to the image.gamma
InvertInverts all pixel values (produces a photographic negative).content
Raster: Channels
NodeDescriptionKey Parameters
Extract ChannelExtracts a single color channel (R, G, B, or A) as a grayscale image.channel
Make OpaqueSets the alpha of all pixels to fully opaque (removes transparency).content
Combine ChannelsCombines separate R, G, B, A raster inputs into a single color image.red, green, blue, alpha
Raster: Filter
NodeDescriptionKey Parameters
BlurApplies a Gaussian (or similar) blur to soften an image.radius
Median FilterApplies a median filter for noise reduction while preserving edges.radius
Raster: Pattern
NodeDescriptionKey Parameters
Noise PatternGenerates a procedural noise texture (e.g. Perlin, Value, Worley).noise_type, scale, seed, octaves
MandelbrotRenders the Mandelbrot fractal set for the current viewport footprint.(footprint-driven)
Raster: General
NodeDescriptionKey Parameters
MaskApplies a raster mask to an image, cutting out areas where the mask is transparent.image, mask
Flatten RasterConverts a Graphic[] to Raster[] by deeply flattening any raster content.content
Arithmetic nodes operate on scalar numbers (f64, f32, u32) and vec2 values. They are the building blocks for parameterized procedural expressions.
NodeDescriptionKey Parameters
MathEvaluates a free-form mathematical expression referencing variables A and B. Supports standard functions like sqrt, ^, log, etc.operand_a, expression, operand_b
AddComputes A + B for scalars or vec2 values.augend, addend
SubtractComputes A - B for scalars or vec2 values.minuend, subtrahend
MultiplyComputes A × B for scalars, vec2, or transform matrices.multiplier, multiplicand
DivideComputes A ÷ B. Returns 0 if the denominator is 0.numerator, denominator
ReciprocalComputes 1 / x. Returns 0 if the input is 0.value
ModuloComputes A % B (remainder). Optionally forces a positive result.numerator, modulus, always_positive
ExponentComputes base ^ power.base, power
RootComputes the nth root of a number (square root, cube root, etc.).radicand, degree
LogarithmComputes the logarithm of a value in a specified base. Use base e for the natural logarithm.value, base
Numeric utility nodes for common operations on individual numbers, plus list-aggregation functions.
NodeDescriptionKey Parameters
RemapLinearly maps a value from one range to another. Supports reversed ranges.value, input_min, input_max, output_min, output_max, clamped
RandomProduces a random number within a range, determined by a seed.seed, min, max
RoundRounds a number to the nearest whole number (halfway values round away from zero).value
FloorRounds a number down to the nearest whole number.value
CeilingRounds a number up to the nearest whole number.value
Absolute ValueRemoves the negative sign from a number (also works on vec2).value
MinReturns the smaller of two numbers.value, other_value
MaxReturns the larger of two numbers.value, other_value
ClampRestricts a number to a range.value, min, max
Greatest Common DivisorComputes the GCD of two integers.value, other_value
Least Common MultipleComputes the LCM of two integers.value, other_value
SumAdds all numbers in a list, producing their total.values
AverageAverages all numbers in a list. An empty list gives 0.values
MinimumReturns the smallest number in a list. An empty list gives 0.values
MaximumReturns the largest number in a list. An empty list gives 0.values
Trigonometric functions for working with angles in degrees or radians.
NodeDescriptionKey Parameters
SineComputes sin(θ). Accepts degrees or radians.theta, radians
CosineComputes cos(θ). Accepts degrees or radians.theta, radians
TangentComputes tan(θ). Accepts degrees or radians.theta, radians
Sine InverseComputes asin(value), returning the angle whose sine is the input.value, radians
Cosine InverseComputes acos(value), returning the angle whose cosine is the input.value, radians
Tangent InverseComputes atan(value) or atan2(y, x) for a vec2 input.value, radians
Nodes for constructing and working with 2D vectors.
NodeDescriptionKey Parameters
Combine Vec2Composes a vec2 from separate X and Y scalar inputs.x, y
Dot ProductComputes the dot product of two vec2 values. Optionally normalizes inputs.vector_a, vector_b, normalize
MagnitudeComputes the length (Euclidean magnitude) of a vec2.vector
NormalizeScales a vec2 to unit length while preserving direction. Returns zero for a zero-length input.vector
Angle BetweenComputes the angle swept between two vec2 values (always 0–180°).vector_a, vector_b, radians
Angle ToComputes the angle a rightward-facing object at the observer position must turn to face the target.observer, target, radians
Boolean logic nodes for conditional branching and comparison.
NodeDescriptionKey Parameters
Less ThanReturns true if A < B (or A <= B with Or Equal).value, other_value, or_equal
Greater ThanReturns true if A > B (or A >= B with Or Equal).value, other_value, or_equal
EqualsReturns true if the two inputs are equal (==, XNOR).value, other_value
Not EqualsReturns true if the two inputs are not equal (!=, XOR).value, other_value
Logical ORReturns true if either input is true.value, other_value
Logical ANDReturns true only if both inputs are true.value, other_value
Logical NOTInverts the boolean input.input
AnyReturns true if at least one value in a bool list is true.values
AllReturns true only if every value in a bool list is true.values
SwitchEvaluates the If True or If False input branch based on a condition.condition, if_true, if_false
Blending nodes control how layers and content composite over one another during rendering. They attach blend mode and opacity metadata to content items.
NodeDescriptionKey Parameters
Blend ModeApplies a blend mode to content, controlling how its pixels combine with those below. Supports all standard Photoshop-compatible blend modes (Normal, Multiply, Screen, Overlay, etc.).content, blend_mode
OpacityMultiplies the opacity and/or fill transparency of content. Opacity affects the content plus anything clipped to it. Fill affects only the content itself.content, opacity, fill
Clipping MaskSets whether the content inherits the alpha of the content beneath it, clipping its visible area to that shape.content, clip
Text nodes work with string values — both for typesetting vector text and for string manipulation and formatting in the graph.Typesetting
NodeDescriptionKey Parameters
TextProduces a styled text string carrying all typographic attributes. Connect it to Text to Vector to render as vector geometry.text, font, size, line_height, letter_spacing, align, max_width, max_height
Text to VectorConverts a styled text string into a vector compound path.string
Text to Vector GlyphsSplits a styled text string into a separate vector item for each glyph (letterform).string
String Operations
NodeDescriptionKey Parameters
String ConcatenateJoins two strings together.first, second
String ReplaceReplaces all occurrences of a substring with another string.string, from, to
String SliceExtracts a substring by start and end index (negative indices count from the end).string, start, end
String TruncateClips a string to a maximum character length, appending an optional suffix when truncation occurs.string, length, suffix
String TrimRemoves leading and/or trailing whitespace.string, start, end
String ReverseReverses the sequence of characters in the string.string
String RepeatRepeats the string a given number of times with an optional separator.string, count, separator
String PadPads a string to a target length by filling with a repeated substring.string, length, padding, from_end
String ContainsChecks whether a string contains a given substring, optionally anchored to the start or end.string, substring, at_start, at_end
String Find IndexReturns the index of the first (or last) occurrence of a substring, or -1 if not found.string, substring, from_end
String OccurrencesCounts the number of occurrences of a substring, with optional overlap.string, substring, overlapping
String CapitalizationConverts capitalization style (lower case, UPPER CASE, Capital Case, Headline Case, Sentence case, camelCase).string, capitalization, joiner
String LengthCounts the number of characters (grapheme clusters) in the string.string
String SplitSplits a string into a list of substrings based on a delimiter.string, delimiter
String JoinJoins a list of strings with a separator. The inverse of String Split.strings, separator
String EscapeConverts between literal escape sequences (\n, \t, etc.) and their actual control characters.string, unescape
Format NumberFormats a number as a string with control over decimal places, separators, and thousands grouping.number, decimal_places, decimal_separator, use_thousands_separator
String to NumberParses a string into a number, with a fallback value for invalid input.string, fallback
Map StringIterates a list of strings, evaluating a mapped operation for each one.strings, mapped
String ValueA constant string value node.string
Value nodes are constants that inject a single typed value into the graph. Use them to provide named parameters that can be wired to multiple downstream nodes.
NodeDescription
Bool ValueA constant true or false boolean value.
Number ValueA constant real number (f64).
Percentage ValueA constant value on a 0–100% slider.
Vec2 ValueA constant 2D vector (XY pair).
Color ValueA constant color, with full color picker.
Gradient ValueA constant gradient (sequence of color stops).
String ValueA constant plain-text string.
Footprint ValueA constant footprint (transform + resolution) describing a render area.
Color nodes construct, convert, and sample colors and gradients.
NodeDescriptionKey Parameters
RGBA to ColorConstructs a color from red, green, blue, and alpha components (0–1 each, interpreted as sRGB).red, green, blue, alpha
HSVA to ColorConstructs a color from hue, saturation, value, and alpha components (0–1 each).hue, saturation, value, alpha
HSLA to ColorConstructs a color from hue, saturation, lightness, and alpha components (0–1 each).hue, saturation, lightness, alpha
Hex to ColorConstructs a color from a CSS hex string (#RRGGBB, #RRGGBBAA, named colors, or functional notation).hex_code
Sample GradientSamples the color at a given position (0–1) along a gradient.gradient, position
Colors to GradientConstructs a gradient from a list of colors, evenly distributed as stops.colors
Gradient TypeSets the type (linear or radial) of a gradient.gradient, gradient_type
Spread MethodSets how a gradient extends past its endpoints (Pad, Reflect, or Repeat).gradient, spread_method

Node Graph Overview

Understand the fundamentals: networks, layers vs. nodes, and how the graph is structured.

Working with Nodes

Learn how to add, connect, configure, and organize nodes in the graph.

Build docs developers (and LLMs) love