Unlock content progressively
Use local variables and conditions to restrict access to screens based on what the user has already done, or to run an action only the first time the application opens.
Unlock a screen or step
This technique is useful for non-linear experiences :games, interactive narratives, free-roaming tours :where the user can navigate between screens in any order and you want to restrict access to certain content until they have completed something elsewhere.
In a strictly linear path, you do not need this: sequential navigation already prevents the user from skipping ahead.
Step 1: Create a variable
Add a PandaSuite database and create a Boolean property (e.g., step_1_done). Leave the default value empty.
Step 2: Set it to true on completion
On the trigger that marks the step as done (button tap, end of video, etc.), add the action Interact with a component > PandaSuite database > Modify the data. Choose step_1_done, function Define, value true.
Step 3: Create a condition
Add a Condition component. Create a condition: step_1_done Equal to true, with Automatic evaluation enabled.
Step 4: Bind visibility
Select the button or element that leads to the locked screen. Bind its Visibility property to the condition result. The element stays hidden until the condition is met.
Run an action only on the first use
Use this to show a one-time welcome screen or onboarding overlay that should never repeat.
Step 1: Create a variable
Add a PandaSuite database and create a Boolean property (e.g., welcome_shown). Do not set a default value :this is what distinguishes “never opened” from “already seen”.
Step 2: Create a condition
Add a Condition component. Create a condition: welcome_shown Unknown or empty.
Step 3: Evaluate on screen display
Select the screen (no object selected). In the Actions panel, add a Current Screen Display trigger. Action: Interact with a component > Conditions > Evaluate condition: welcome shown.
Step 4: React and mark as seen
On the Condition component, for the Evaluation: welcome shown trigger, add two actions:
- Show your overlay (open a pop-up, change a state, etc.)
- Set
welcome_showntotrue
From the second visit onwards, the condition is false and the overlay is skipped.
The variable is stored locally on the device. For cross-device persistence, use a Firebase Session variable instead.