Primitive Types
> The fundamental building blocks of data in every flow.
Primitive types represent simple, single values. They are the most common types you will work with in Brickr.
String
Wire color: Teal (#4ecdc4)
A string is a sequence of characters -- text. Strings are used for names, messages, URLs, dates (in ISO format), email addresses, and any other textual data.
Common string nodes
| Node | Description | |------|-------------| | Concat | Join two or more strings together | | String Length | Get the number of characters | | Substring | Extract a portion of a string | | To Upper / To Lower | Change case | | Replace | Replace part of a string | | Split | Break a string into an array by a delimiter | | Template | Build a string with placeholders |
Inline values
String pins that are not marked as port-only can accept inline values directly in the node. Type the value into the input field without connecting a wire.
When a node expects a string but you have a number, use the To String node to convert it.
Number
Wire color: Red (#ff6b6b)
A number represents an integer or decimal value. Numbers are used for counts, prices, IDs, calculations, and any numeric data.
Common number nodes
| Node | Description | |------|-------------| | Add | Add two numbers | | Subtract | Subtract one number from another | | Multiply | Multiply two numbers | | Divide | Divide one number by another | | Modulo | Get the remainder of division | | Round | Round to nearest integer | | Min / Max | Get the smaller or larger of two numbers | | Random | Generate a random number |
Inline values
Number pins accept inline numeric values. Type a number directly into the input field.
Most nodes use number for numeric values. Some specialized nodes may also expose numeric aliases such as float or numeric, but they still behave like the same numeric family in the editor.
Boolean
Wire color: Amber (#f59e0b)
A boolean is a true/false value. Booleans are used for conditions, toggles, flags, and any yes/no decision.
Common boolean nodes
| Node | Description | |------|-------------| | AND | True if both inputs are true | | OR | True if either input is true | | NOT | Inverts true to false and vice versa | | Equals | Compares two values for equality | | Greater Than | Checks if a number is greater | | Less Than | Checks if a number is smaller |
Branching
Booleans are the foundation of conditional logic. Use the Branch node (if/else) to take different paths in your flow based on a boolean value.
Any
Wire color: Gray (#888888)
The any type is a special type that accepts any value. It is used by nodes that work with data generically, without caring about its specific type.
- An
anyinput can receive a string, number, boolean, object, or array - An
anyoutput can connect to any input type
Use any sparingly. Typed connections give you better validation and make your flows easier to understand. Prefer specific types whenever possible.
Sequence
Wire color: White (#ffffff)
Sequence is not a data type -- it controls execution order. The white triangle connections determine which node runs next.
- Every flow starts from the Start Node's sequence output
- Nodes that perform actions (database writes, HTTP responses) have sequence inputs and outputs
- Connect sequence pins to define the order of operations
Sequence connections are required for nodes that have side effects (saving data, sending responses, etc.). Pure data nodes (math, string operations) do not need sequence connections -- they execute automatically when their output is needed.
What's next?
| Topic | Description | |-------|-------------| | Objects | Structured data and custom structures | | Arrays | Working with lists of values | | Enums | Named value sets |