Building with Visual Development
Last updated
Last updated
The Function Stack is what you'll use to visually develop in Xano. It allows you to construct any and all of the business logic necessary for whatever you are trying to build.
The builder will be comprised of up to three different sections — inputs, the function stack, and the response. Different function stack types may not contain all of the available sections listed below.
An API is a piece of logic or a workflow that can be called to run from external sources. Think about when you tap a button or link anywhere in an application; there are API calls happening behind the scenes to make sure those taps perform the expected action.
A custom function is similar to an API, but it is reusable logic that you can insert into any other function stack. These are useful if you are implementing similar logic in multiple places, and allows you to build and maintain that logic in a single location.
📖 Learn more about custom functions
A background task is a workflow that runs automatically based on a schedule that you define.
📖 Learn more about background tasks
A trigger is a workflow that runs every time something else happens. Xano supports two different kinds of triggers: database triggers and realtime triggers. Database triggers run every time a certain change is made in a database table, and realtime triggers run based on events in a realtime channel.
Think of middleware as an extra security guard at the entrance and exit of your other function stacks. You can build and deploy middleware to run either before a function stack, or right before it delivers a response. This is useful for things like input or output sanitization, custom error logging, security, and more.
You can use both mouse and keyboard navigation when working in the builder.
When you click Publish, any pending changes will be pushed 'live'.
Filters are additional functions that can be applied directly to other pieces of data in Xano. For example, a filter could be used for a mathematical operation, adjust text formatting, create new datasets from existing data, and more.
To apply a filter, just hover over a value box and click Add Filter.
To learn more about the available filters in Xano, head to the Filters section here.
Dot Notation is used to navigate inside of variables and target specific pieces of data.
Let's use the following object as an example. This object is contained in a variable called author.
Notice how the name field is not capitalized properly. When we edit this variable, we can use dot notation to target that name field specifically, like this:
This will tell Xano to keep the rest of the object the same, and only update the name
field with whatever our adjustments are.
Function Stack
↑ ↓
Navigate Function Stack rows inputs and response values
Function Stack
Shift ↑ ↓
Select multiple rows
Function Stack
A
Add row below highlighted row or inside highlighted empty row
Function Stack
Delete
Delete highlighted row or selection of rows
Function Stack
Enter
Edit the highlighted row
Function Stack
D
Edit the description of highlighted row
Function Stack
Cmd/Ctrl C
Copy the highlighted row or selection
Function Stack
Cmd/Ctrl X
Cut the highlighted row or selection
Function Stack
Cmd/Ctrl V
Paste function stack clipboard contents below currently highlighted row
Function Stack
Cmd/Ctrl Z
Undo last change
Function Stack
Cmd/Ctrl /
Disable/enable highlighted row
Function Stack
F
Convert a selection of rows into a function
Function Stack
G
Group a selection of rows
Function Stack
C
Clone highlighted row
Function Stack
Option/Alt ↑ ↓
Move highlighted row
Inputs and Response
Enter
Edit highlighted input/response
Inputs and Response
Delete
Delete highlighted input/response
Inputs and Response
C
Clone highlighted response
Page Actions
Cmd/Ctrl Z
Undo last action
Page Actions
Cmd/Ctrl Enter
Open the Run & Debug panel
Page Actions
Cmd/Ctrl P
Open the Publish panel`;
The inputs are anything that a function stack needs to run. For example, a function stack that logs in a user probably needs a username or email and a password; these would be the inputs.
Once the function stack has done its job, it needs to know what to return. This lives in the Response section.
This is where all of the magic happens. All of the different steps and functions that are performed inside of a function stack happen here.