Skip to content
Skip to main content

Changelog

What we shipped, when we shipped it. The Setgreet platform and SDKs, release by release.

Platform

Branch on an answer from any earlier screen

iOS · Android

A Response Split used to read only the screen right before it, so branching on a quiz answered a few screens earlier meant a chain of condition nodes. The split can now take its answer from any earlier screen in the flow: pick the screen and the component in the split, and the SDK remembers every answer for the whole flow session.

  • The source dropdown in the split lists every screen the user passes before reaching it, with the previous screen preselected
  • The canvas shows which screen and component a split reads, and flags splits that read an earlier screen
  • Save to attribute works the same way for a split that reads an earlier screen
  • The web preview now follows Response Splits instead of always taking the default path
  • Splits that read the previous screen behave exactly as before on every SDK version; branching on an earlier screen needs iOS SDK 1.3.0 or Android SDK 1.3.0, and older versions take the default path
Improvement

Paths can converge, and Format layout lines things up

Several screens can now lead into the same screen, so alternative paths can rejoin the main flow without a detour through a split. Format layout was rebuilt on a real graph layout engine: chained screens sit on one row, splits fan out to the right, paths that rejoin no longer overlap, and every collaborator gets the same result.

  • Any number of screens can connect into one screen; one outgoing edge per screen and one edge per split option stay as they were
  • Screens added by the AI assistant or through the MCP server are laid out on arrival instead of stacking on top of each other
  • Opening a flow whose nodes overlap tidies the canvas once
  • Shared flow pages render screens in the app's own colors, matching the preview
Platform

Popup screens, and sheets that stay inside the flow

iOS · Android · React Native · Flutter

A screen can now present as a popup: a centered card over a dimmed background that is only as tall as its content, up to a cap you choose, with the button pinned at the bottom once the content scrolls. Bottom sheets and popups in the middle of a flow now sit on the previous screen of the flow instead of revealing your app underneath, and going back returns to that screen.

  • Popup presentation style with a configurable width, height cap, corner radius, card color, and overlay
  • The card hugs short content and scrolls long content above the pinned button, on both platforms and in the editor preview
  • A mid-flow sheet or popup is drawn over the previous fullscreen screen, which stays visible but cannot be tapped
  • Tapping the popup's overlay closes the flow, when the screen allows it
  • Templates keep the popup and sheet configuration of every screen
  • Older SDK versions render a popup screen fullscreen; update the SDK to get the card
Platform

More permission actions, and primers that skip themselves

iOS · Android · React Native · Flutter

Buttons can now request App Tracking Transparency, microphone, and photo library access, alongside notifications, location, and camera. A permission primer can also skip itself when the permission is already granted, so returning users never see an explanation for something they already agreed to.

  • Three new button actions: request tracking, microphone, and photo library permission
  • Skip when granted: choose the permission a screen asks for and the SDK skips the screen when it is already allowed, without prompting
  • A skipped screen records no view and is left out of the back stack
  • The SDK declares no permissions itself; each request needs the usual Info.plist key or manifest entry in your app, and a missing declaration never crashes the flow
  • App Tracking Transparency has no Android equivalent, so a tracking screen is skipped there
Improvement

The button at the bottom stays put

iOS · Android · React Native · Flutter

On a Fit Screen layout, the button block at the bottom of a screen is now pinned to the bottom of the viewport, and anything above it scrolls when it does not fit. A long quiz or a tall feature list can no longer push the call to action off the screen. Screens whose content already fit look exactly as before.

  • The trailing spacer-and-buttons block, or the last run of buttons, is the pinned footer
  • Applies to fullscreen screens, inside bottom sheets, and inside popups
  • The editor canvas shows a scroll cue when a screen overflows
  • Switch a screen to the Scrollable layout to let the buttons scroll with the content instead
Platform

Show data from your own API inside a flow

iOS · Android · React Native · Flutter

A flow screen can now render data that only you have. Register a GET endpoint once, bind it to a screen, and the screen shows live data from your own backend. The parameters can come from answers the user gave earlier in the same flow, so a shopper who picks a car brand on one screen sees matching tires on the next. Setgreet calls your API from its servers, signs each request so you can verify it, and never lets a slow or failing endpoint blank the flow.

  • Data Sources: register an HTTPS GET endpoint per app, with parameters drawn from user attributes, earlier answers, or event properties
  • A Test button that calls your endpoint once and shows the response as a field tree, so you pick paths instead of typing them
  • A List component that repeats one card per row of your data
  • Screens whose data depends only on saved attributes render on existing SDK versions with no app update. Screens that use an answer from earlier in the same flow need the latest SDK.
  • Dropdowns, quizzes and other choice components can take their options straight from your API
  • Signed requests with a shared secret, or a stored API key, bearer token, or basic auth, encrypted at rest and never shown again
  • Responses can be cached per user or shared, and a failing endpoint pauses itself rather than slowing every screen that uses it
  • If your API fails, the screen still renders without the data. You can choose to skip the screen instead.
Platform

Motion: screen transitions, looping animations, and press feedback

iOS · Android

Flows can now move. Screens animate in with a fade, a slide, or a rise from the bottom. Any component can carry a gentle float or pulse to draw the eye. Buttons scale down when pressed, the way a native control does. All of it is authored in the editor and rendered natively, and all of it respects the reduce motion setting on the device.

  • Screen transitions: fade, horizontal slide, and slide up, each with its own duration and easing
  • Slide transitions are direction aware, so going back mirrors going forward
  • Looping float and pulse animations that start after the entrance animation finishes
  • Press feedback on buttons with an adjustable pressed scale
  • Animation settings are now available on every visual component, not just text, buttons, and images
  • Screens without a transition keep their existing behavior, so nothing changes until you choose it
Platform

Auto-advance for timed screens

iOS · Android

A screen can now move on by itself after a set delay. Loading states, personalization moments, and celebration screens no longer need a button whose only job is to let the user leave.

  • Set a delay in the editor and the screen advances on its own
  • Ideal for building your plan style loading screens and success moments
  • Rendered natively on iOS and Android
Platform

Searchable quiz options and clearer required inputs

iOS · Android

Long option lists are now searchable, so a quiz with dozens of choices stays usable. Required inputs explain themselves too: instead of a ring around the field, the flow now says which input is blocking the call to action, in a message under the input you can write yourself.

  • Search field on quiz components, with no results copy you author
  • Required inputs show a message naming the field that is blocking the button
  • The message is authorable and translatable like any other text
Platform

Scrollable containers

iOS · Android

A container can now scroll its own content as a region, so a long list can scroll while the headline and the call to action stay fixed in place.

  • Turn any container into its own scroll region
  • Keeps a screen headline and call to action anchored while the middle scrolls
  • Screens also scroll properly now when their content overflows the viewport
Platform

Overlap and free positioning in the editor

iOS · Android

You can now layer components on top of each other and place them freely on a screen, instead of only stacking them top to bottom. Drag any component into an absolute position, put a button or badge over an image, and control which layer sits in front. It renders the same natively on iOS and Android.

  • Layer any component on top of another so elements can sit over each other
  • Free-drag a component to position it anywhere on the screen
  • Restack overlapping layers from the Layers panel to choose what sits in front
  • A full-width absolute child spans the container as a full-bleed banner
  • Rendered natively on iOS and Android to match the editor
Platform

Responsive component sizing

iOS · Android

Components can now be sized to fill the available width or size themselves automatically, instead of only fixed pixels. The size control in the editor has a Fixed, Percent, and Auto mode, so a component can adapt to any screen instead of being pinned to one size.

  • New Fixed / Percent / Auto size modes in the editor properties panel
  • Set width to Percent 100 to fill the available width
  • Lottie animations default to fill width with an automatic height from the animation aspect ratio, and render proportionally on iOS and Android
  • Set Height to Auto on images and Lottie to wrap the height to the content
Platform

Button icons

iOS · Android

Buttons can now carry an icon next to their label, chosen from a built-in icon set in the editor. The same icon renders natively on iOS and Android and tints to match the label color, so a button looks right everywhere without uploading any assets.

  • Searchable icon picker in the button properties panel
  • A curated set covering arrows, common actions, status and marketing glyphs, media icons, and the Apple and Google sign-in marks
  • Place the icon to the left or right of the label
  • Rendered natively on iOS and Android, no image upload needed
Platform

New input components: Stepper and Segmented Control

iOS · Android

Two new input components for collecting answers in a flow. Stepper is a minus / value / plus control for exact numbers like age or quantity. Segmented Control is a single-select that renders as a compact tab strip or as full-width option cards with an icon, title, and description.

  • Stepper steps a value between a min and max, disables at the bounds, and reports the result
  • Segmented Control has a tab-strip layout and a stacked-card layout for goal pickers and onboarding choices
  • Mark a stacked Segmented Control as required to block Continue until the user picks an option
  • Available in the editor and rendered natively on iOS and Android
Platform

App Profile and brand theme sync

iOS · Android

Every app now has a profile page at its own URL with About, Brand, SDK, and Settings tabs. It is the single source of truth for what Setgreet knows about your app, and the AI assistant reads it when it builds and edits flows. The SDK also syncs your app's theme to the dashboard on init, so generated screens match your real colors and fonts.

  • App Profile page with editable app metadata and brand
  • Brand tab for colors, fonts, logo, and voice, so your edits are never overwritten by a sync
  • iOS and Android SDKs sync the host app theme to the dashboard at init
  • Manual edits are preserved on sync, and a synced section can be reverted to the last SDK values
  • The AI assistant uses the profile and theme when generating flows
Platform

Flow Store: start from a template

Browse a store of ready-made, multi-screen example flows organized by app category and goal, each with a live preview of every screen. Add one to the editor for free to start from a proven layout, or build a personalized version with AI.

  • Curated flow templates organized by app category and goal
  • Live previews that render every screen of a template
  • Add to editor to clone a template into a new draft, or Build with AI to recompose it
  • The store filters to your app category by default
SDK

New components, entrance animations, and accessibility

iOS · Android

A batch of native rendering upgrades across iOS and Android. New input and selection components, native entrance animations for screens, richer button states, and accessibility labels so flows work with VoiceOver and TalkBack.

  • New Switch, Segmented Control, Chip, and Quiz components
  • Native entrance animations: fade, slide-up, and scale
  • Button loading spinner, press state, and haptic feedback
  • VoiceOver and TalkBack labels across components
  • Text input autofill hints for faster form completion
Platform

Realtime collaboration in the flow editor

Your whole team can now edit the same flow at once. Changes from teammates appear live, no refresh needed, and you can see who else is in the editor and where they are working.

  • Live edit sync across everyone in a flow, for both manual edits and Build with AI
  • See who's online with per-person avatars and colors
  • Live cursors that show where teammates are pointing on the canvas
  • Presence on screens so you can tell who is editing what
  • Everyone can edit at the same time without locking each other out, so no one waits for a turn
Platform

Build with AI

Describe the flow you want in plain language and let the assistant build it. Build with AI crawls your app store listing, asks a few questions, then generates a draft flow you can keep editing by chat or by hand.

  • Generate a complete draft flow from a natural-language description
  • Edit existing flows through chat: update copy, add screens, reorder steps
  • Generate images inline and place them on your screens
  • Auto-translate a flow into other languages from the chat
  • Plan-then-confirm before anything is built, so you stay in control
  • Available on every plan with bundled credits and optional top-ups
Platform

Connect your AI agent over MCP

Setgreet now speaks the Model Context Protocol, so AI agents can read and build flows on your behalf. Connect Claude, Cursor, ChatGPT, and other MCP-compatible clients to your workspace.

  • OAuth-secured connection scoped to your organization and role
  • Install snippets for Claude Desktop, Claude Code, Cursor, and more
  • Read and manage flows, apps, and analytics from your agent
SDK

Auto-layout for every screen

iOS 1.0.2 · Android 1.0.2 · React Native 1.0.1 · Flutter 1.0.1

Screens now adapt automatically to device size, safe areas, and dynamic content. Design once, render cleanly on every phone your users actually have.

Improvement

Layout rendering improvements

iOS 1.0.1 · Android 1.0.1

Tighter rendering for complex multi-component screens. Image sizing fixes in edge-case layouts. General stability.

SDK

React Native and Flutter SDKs hit 1.0

React Native 1.0.0 · Flutter 1.0.0

Cross-platform parity. Same rendering engine, same lifecycle callbacks, same feature surface as iOS and Android. If you ship React Native or Flutter, Setgreet is now a drop-in.

SDK

iOS and Android SDKs 1.0

iOS 1.0.0 · Android 1.0.0

A full rewrite of the native SDKs, built for performance and a smaller integration surface.

  • New rendering engine for faster, smoother flow presentations
  • Dynamic Google Fonts loaded on demand, no bundled assets
  • Anonymous and identified users with automatic identity merge
  • Analytics: screens, events, and attributes wired in for targeting
  • Full flow lifecycle callbacks: started, completed, dismissed, screen changes, actions, permissions
  • Native prompts for notifications, location, and camera
  • Platform actions: App Store / Play Store reviews, share sheets, URL handling
SDK

Native permission requests

iOS 0.6.0 · Android 0.6.0

Request notification, location, and camera permissions directly from a flow. Pair with a pre-explanation screen so users know why you are asking before the system dialog appears.

SDK

Flow lifecycle callbacks

iOS 0.5.0 · Android 0.5.0

Hook into every moment of a flow: started, completed, dismissed, screen changes, user actions, and permission outcomes. Forward the events to your analytics stack or trigger app logic in response.

SDK

Localized flows by device locale

iOS 0.4.0 · Android 0.4.0 · React Native 0.4.1 · Flutter 0.2.0

Pass the user locale to identifyUser and the SDK serves the right language automatically. Add translations in the dashboard, never rebuild the app.