Getting Started with Codular

Codular is an AI-first no-code platform for building mobile apps. Design screens visually, add logic with flows, and export to React Native - no coding required.

Screens

Each screen is a page in your app. Add components like Text, Buttons, Images, and Lists to design your UI.

Components

Drag-and-drop UI building blocks. Each has properties (appearance), events (interactions), and styles (layout).

Flows

Visual logic builder. Connect nodes to define what happens when users tap buttons, submit forms, or load screens.

Variables

Store data like user input, API responses, or app state. Variables can be used across screens and flows.

Quick Start

1

Create a new project from the dashboard

2

Design your first screen by dragging components from the left palette

3

Configure component properties in the right panel

4

Switch to Flows tab to add logic (button actions, API calls, navigation)

5

Preview your app in the browser or on your phone via Companion

6

Build an APK/AAB when you're ready to publish

Variables

Variables store data that your app uses - user input, API responses, counters, lists, and more.

Variable Types

TypeDefaultUse Case
string""Text input, names, messages
number0Counters, prices, scores
booleanfalseToggles, on/off states, dark mode
array[]Todo lists, chat messages, search results
object{}User profiles, API responses, form data

Using Variables

Bind to Components

Connect a variable to a TextInput, Switch, or List to display/edit its value automatically.

Set in Flows

Use the Set Variable node to update values when buttons are pressed or events fire.

Use in Text

Reference variables in text using ${variableName} syntax - e.g., "Hello, ${userName}!"

Persist with Storage

Save to Storage / Load from Storage nodes let you keep variable data between app sessions.

Components Reference

169 components across 12 categories

Layout12

ContainerContainer

A flexible box that holds other components inside it

Properties

NameTypeDefault
scrollablebooleanfalse

Events

onPress
Category: layoutSub: GeneralAccepts children
Horizontal ArrangementRow

Arranges child components side by side horizontally

Category: layoutSub: GeneralAccepts children
Vertical ArrangementColumn

Stacks child components vertically from top to bottom

Category: layoutSub: GeneralAccepts children
Card ViewCard

A raised surface with shadow for grouping content

Properties

NameTypeDefault
elevationnumber2
outlinedbooleanfalse

Events

onPress
Category: layoutSub: GeneralAccepts children
Grid ViewGridView

Arranges children in a grid with multiple columns

Properties

NameTypeDefault
columnsnumber2
Category: layoutSub: GeneralAccepts children
SpacerSpace

Adds empty space between components

Properties

NameTypeDefault
sizenumber16
Category: layoutSub: GeneralNo children
Vertical ScrollScrollView

Makes content scrollable when it overflows vertically

Events

onScroll
Category: layoutSub: ScrollingAccepts children
Horizontal ScrollHorizontalScroll

Makes content scrollable horizontally

Events

onScroll
Category: layoutSub: ScrollingAccepts children
Swipe RefreshSwipeRefresh

Pull down to refresh content inside

Events

onRefresh
Category: layoutSub: ScrollingAccepts children
ModalModal

A popup dialog that appears over the current screen

Properties

NameTypeDefault
visiblebooleanfalse
titlestringModal Title
animationTypeselectfade
dismissablebooleantrue

Events

onClose
Category: layoutSub: ViewsAccepts children
Bottom SheetBottomSheet

A panel that slides up from the bottom

Properties

NameTypeDefault
visiblebooleanfalse

Events

onClose
Category: layoutSub: ViewsAccepts children
Web ViewerWebView

Displays a website inside your app

Properties

NameTypeDefault
urlstring
scrollbarbooleantrue
visiblebooleantrue
zoomEnabledbooleantrue
zoomDisplaybooleantrue
zoomPercentnumber100
desktopModebooleanfalse
followLinksbooleantrue
loadImagesbooleantrue
ignoreSslErrorsbooleanfalse
useExternalBrowserbooleanfalse
userAgentstring
usesLocationbooleanfalse
promptForPermissionbooleantrue

Events

onLoadonErroronPageStartedonPageFinished
Category: layoutSub: ViewsNo children

Navigation4

Bottom NavigationBottomTabs

Navigation bar at the bottom with tab icons. Multiple styles available.

Properties

NameTypeDefault
tabsstring[]
variantselectdefault
activeColorcolor#6d28d9
inactiveColorcolor#94a3b8
backgroundColorcolor#ffffff
showLabelsbooleantrue
activeTabnumber0

Events

onTabChange
Category: navigationSub: NavigationNo children
Tab LayoutTabLayout

Swipeable tabs to switch between views

Properties

NameTypeDefault
tabsstringTab 1,Tab 2

Events

onTabChange
Category: navigationSub: NavigationAccepts children
Side MenuDrawer

Slide-out menu from the side of the screen

Events

onOpenonClose
Category: navigationSub: NavigationAccepts children
View PagerViewPager

Swipe left/right to navigate between pages

Events

onPageChange
Category: navigationSub: NavigationAccepts children

Display35

TextText

Displays text like headings, paragraphs, or labels

Properties

NameTypeDefault
textstringHello World
variantselectbody
maxLinesnumber0
selectablebooleanfalse

Events

onPress
Category: displayNo children
ImageImage

Shows an image from a URL or uploaded file

Properties

NameTypeDefault
sourceimage
resizeModeselectcover
borderRadiusnumber0
altstring

Events

onPressonLoadonError
Category: displayNo children
IconIcon

Displays a small icon symbol

Properties

NameTypeDefault
nameiconstar
sizenumber24
colorcolor#000000

Events

onPress
Category: displayNo children
DividerDivider

A thin horizontal line to separate content

Category: displayNo children
BadgeBadge

A small label for status or notifications

Properties

NameTypeDefault
textstringNew
variantselectprimary
Category: displayNo children
Progress BarProgressBar

Shows progress as a horizontal bar

Properties

NameTypeDefault
progressnumber50
colorcolor#3b82f6
Category: displayNo children
AvatarAvatar

A circular image for user profile pictures

Properties

NameTypeDefault
sourceimage
namestring
sizenumber48

Events

onPress
Category: displayNo children
MapMap

Google Maps view with markers and user location

Properties

NameTypeDefault
latitudenumber37.7749
longitudenumber-122.4194
zoomnumber12
showUserLocationbooleanfalse
mapTypeselectstandard
markersstring[]

Events

onMarkerPressonMapPressonRegionChange
Category: displaySub: MediaNo children
Video PlayerVideo

Play video from a URL with playback controls

Properties

NameTypeDefault
urlstring
autoPlaybooleanfalse
loopbooleanfalse
mutedbooleanfalse
controlsbooleantrue

Events

onPlayonPauseonEndonError
Category: displaySub: MediaNo children
Audio PlayerAudioPlayer

Play audio from a URL with playback controls

Properties

NameTypeDefault
urlstring
autoPlaybooleanfalse
loopbooleanfalse

Events

onPlayonPauseonEnd
Category: displaySub: MediaNo children
Lottie AnimationLottieAnimation

Play Lottie animations from a JSON file URL or asset

Properties

NameTypeDefault
sourceimage
autoPlaybooleantrue
loopbooleantrue
speednumber1

Events

onAnimationFinishonAnimationLooponPress
Category: displaySub: MediaNo children
PDF ViewerPDFViewer

Display PDF documents from URL or local file

Properties

NameTypeDefault
sourcestring
showToolbarbooleantrue

Events

onLoadonErroronPageChange
Category: displaySub: MediaNo children
Barcode / QR GeneratorBarcodeGenerator

Generate QR codes and barcodes from text

Properties

NameTypeDefault
valuestring
formatselectQR_CODE
sizenumber200
colorcolor#000000
Category: displaySub: MediaNo children
Timer / CountdownTimer

Countdown timer with start, pause, reset controls

Properties

NameTypeDefault
durationnumber60
autoStartbooleanfalse
showMinutesbooleantrue

Events

onTickonFinish
Category: displayNo children
StopwatchStopwatch

Count up timer with lap support

Properties

NameTypeDefault
showMillisecondsbooleantrue

Events

onTickonLap
Category: displayNo children
ChartChart

Display bar, line, pie, or donut charts with data from variables

Properties

NameTypeDefault
chartTypeselectbar
dataVariablestring
labelsstringMon,Tue,Wed,Thu,Fri
colorsstring#3b82f6,#8b5cf6,#22c55e,#f59e0b,#ef4444
showLegendbooleantrue
showGridbooleantrue
titlestring

Events

onDataPointPress
Category: displaySub: ChartsNo children
Drawing CanvasDrawingCanvas

Freehand drawing surface — sketch, annotate, doodle

Properties

NameTypeDefault
strokeColorcolor#000000
strokeWidthnumber3
backgroundColorcolor#ffffff
toolselectpen

Events

onDrawStartonDrawEndonClear
Category: displaySub: CreativeNo children
Carousel / Image SliderCarousel

Swipeable image slider with dots indicator and auto-play

Properties

NameTypeDefault
imagesstring
autoPlaybooleantrue
intervalnumber3000
showDotsbooleantrue
borderRadiusnumber12

Events

onSlideChangeonPress
Category: displaySub: MediaNo children
Image GalleryImageGallery

A grid of tappable images with lightbox preview

Properties

NameTypeDefault
variableIdstring
columnsnumber3
gapnumber4
aspectRatioselectsquare

Events

onImagePress
Category: displayNo children
Circular ProgressCircularProgress

A ring-shaped progress indicator

Properties

NameTypeDefault
valuenumber75
variableIdstring
sizenumber120
strokeWidthnumber10
colorcolor#3b82f6
trackColorcolor#e2e8f0
showValuebooleantrue
labelstring
Category: displayNo children
Skeleton LoaderSkeletonLoader

Animated loading placeholder

Properties

NameTypeDefault
variantselecttext
linesnumber3
widthnumber0
heightnumber0
Category: displayNo children
Countdown TimerCountdownTimer

A visual countdown display

Properties

NameTypeDefault
targetDatestring
variableIdstring
showDaysbooleantrue
showHoursbooleantrue
showMinutesbooleantrue
showSecondsbooleantrue

Events

onComplete
Category: displayNo children
Product CardProductCard

Display a product with image, title, price, and rating

Properties

NameTypeDefault
titlestringProduct Name
pricestring$99.00
originalPricestring
imageimage
ratingnumber4.5
badgestring

Events

onPressonAddToCart
Category: displaySub: E-CommerceNo children
Cart BadgeCartBadge

Shopping cart icon with item count

Properties

NameTypeDefault
countnumber0
variableIdstring
iconColorcolor#0f172a
badgeColorcolor#ef4444

Events

onPress
Category: displaySub: E-CommerceNo children
Price TagPriceTag

Formatted price display with optional discount

Properties

NameTypeDefault
pricestring$99.00
originalPricestring
currencystring$
showDiscountbooleantrue
Category: displaySub: E-CommerceNo children
Order TrackerOrderTracker

Step progress for order status tracking

Properties

NameTypeDefault
stepsstringOrdered,Shipped,Out for Delivery,Delivered
currentStepnumber1
variableIdstring
colorcolor#22c55e
Category: displaySub: E-CommerceNo children
Chat BubbleChatBubble

Message bubble with sent/received styling

Properties

NameTypeDefault
messagestringHello!
isSentbooleanfalse
timestampstring
senderNamestring
avatarimage
sentColorcolor#3b82f6
receivedColorcolor#f1f5f9

Events

onPressonLongPress
Category: displaySub: ChatNo children
Post CardPostCard

Social media post with image, text, like/comment/share

Properties

NameTypeDefault
authorstringUser Name
authorAvatarimage
contentstringThis is a sample post!
imageimage
likesnumber42
commentsnumber5
timeAgostring2h ago

Events

onLikeonCommentonShareonPress
Category: displaySub: SocialNo children
Story CircleStoryCircle

Instagram-style circular story avatar

Properties

NameTypeDefault
imageimage
labelstringUser
hasStorybooleantrue
sizenumber72
borderColorcolor#ec4899

Events

onPress
Category: displaySub: SocialNo children
Quiz CardQuizCard

Question card with multiple choice options

Properties

NameTypeDefault
questionstringWhat is 2 + 2?
optionsstring3,4,5,6
correctAnswerstring4
variableIdstring

Events

onAnswer
Category: displaySub: EducationNo children
FlashcardFlashcard

A flip card with front and back for learning

Properties

NameTypeDefault
frontstringQuestion
backstringAnswer
frontColorcolor#3b82f6
backColorcolor#22c55e

Events

onFlip
Category: displaySub: EducationNo children
Music PlayerMusicPlayer

Full audio player with progress, controls, and artwork

Properties

NameTypeDefault
titlestringSong Title
artiststringArtist Name
artworkimage
audioUrlstring

Events

onPlayonPauseonNextonPrevious
Category: displaySub: MediaNo children
Map MarkerMapMarker

A customizable pin for use on maps

Properties

NameTypeDefault
latitudenumber0
longitudenumber0
titlestringLocation
colorcolor#ef4444

Events

onPress
Category: displaySub: MapsNo children
Place CardPlaceCard

Location card with address, rating, and distance

Properties

NameTypeDefault
namestringPlace Name
addressstring123 Main St
ratingnumber4.2
distancestring1.2 km
imageimage
categorystringRestaurant

Events

onPressonDirections
Category: displaySub: MapsNo children
Game Grid (2048)GameGrid

A 2048-style sliding puzzle game with swipe controls and scoring

Properties

NameTypeDefault
gridSizeselect4
scoreVariableIdstring
bestScoreVariableIdstring
gameStateVariableIdstring
targetTilenumber2048
bgColorcolor#bbada0
emptyTileColorcolor#cdc1b4
tile2Colorcolor#eee4da
tile4Colorcolor#ede0c8
tile8Colorcolor#f2b179
tile16Colorcolor#f59563
tile32Colorcolor#f67c5f
tile64Colorcolor#f65e3b
tile128Colorcolor#edcf72
tile256Colorcolor#edcc61
tile512Colorcolor#edc850
tile1024Colorcolor#edc53f
tile2048Colorcolor#edc22e
tileLowTextColorcolor#776e65
tileHighTextColorcolor#f9f6f2
tileRadiusnumber6

Events

onScoreonGameOveronWinonMoveonReset
Category: displaySub: GamesNo children

Input30

ButtonButton

A clickable button that triggers an action

Properties

NameTypeDefault
titlestringButton
variantselectprimary
disabledbooleanfalse
fullWidthbooleantrue
iconicon

Events

onPressonLongPress
Category: inputNo children
Text InputTextInput

A single-line text field for user input

Properties

NameTypeDefault
placeholderstringEnter text...
labelstring
secureTextEntrybooleanfalse
keyboardTypeselectdefault
variableIdstring
maxLengthnumber0
autoFocusbooleanfalse
multilinebooleanfalse

Events

onChangeonSubmitonFocusonBlur
Category: inputNo children
Text AreaTextArea

A multi-line text field for longer input

Properties

NameTypeDefault
placeholderstringEnter text...
numberOfLinesnumber4
variableIdstring

Events

onChangeonFocusonBlur
Category: inputNo children
SwitchSwitch

A toggle switch for on/off settings

Properties

NameTypeDefault
labelstringToggle
variableIdstring
trackColorcolor#3b82f6

Events

onChange
Category: inputNo children
CheckboxCheckbox

A checkable box for yes/no choices

Properties

NameTypeDefault
labelstringCheck me
variableIdstring
colorcolor#3b82f6

Events

onChange
Category: inputNo children
DropdownDropdown

A dropdown menu to pick from a list of options

Properties

NameTypeDefault
labelstringSelect
placeholderstringChoose an option
variableIdstring

Events

onChange
Category: inputNo children
Date PickerDatePicker

Opens a calendar to pick a date

Properties

NameTypeDefault
labelstringSelect date
variableIdstring

Events

onChange
Category: inputNo children
Radio ButtonRadioButton

Select one option from a group

Properties

NameTypeDefault
labelstringOption
variableIdstring

Events

onChange
Category: inputNo children
SliderSlider

Drag a handle to select a value in a range

Properties

NameTypeDefault
minnumber0
maxnumber100
stepnumber1
variableIdstring

Events

onChange
Category: inputNo children
Floating Action ButtonFloatingButton

A round button that floats above content

Properties

NameTypeDefault
iconiconplus
sizeselectnormal

Events

onPress
Category: inputNo children
CameraCamera

Take a photo or record video using the device camera

Properties

NameTypeDefault
qualityselectmedium
cameraTypeselectback
flashModeselectoff

Events

onCaptureonError
Category: inputSub: Media & SensorsNo children
Image PickerImagePicker

Pick an image or video from the device gallery

Properties

NameTypeDefault
allowMultiplebooleanfalse
maxFilesnumber1
mediaTypeselectimages

Events

onPickonError
Category: inputSub: Media & SensorsNo children
Audio RecorderAudioRecorder

Record audio from the device microphone

Properties

NameTypeDefault
maxDurationnumber60
formatselectm4a

Events

onStartonStoponError
Category: inputSub: Media & SensorsNo children
Contact PickerContactPicker

Pick a contact from the device address book

Events

onPickonError
Category: inputSub: Media & SensorsNo children
QR/Barcode ScannerQRScanner

Scan QR codes and barcodes using the device camera

Properties

NameTypeDefault
cameraTypeselectback

Events

onScanonError
Category: inputSub: Media & SensorsNo children
Signature PadSignaturePad

Capture signatures — for forms, contracts, deliveries

Properties

NameTypeDefault
penColorcolor#1e293b
penWidthnumber2
placeholderstringSign here
backgroundColorcolor#f8fafc
variableIdstring

Events

onSignatureStartonSignatureEndonClear
Category: inputNo children
Color PickerColorPicker

Let users pick a color — for themes, customization, design tools

Properties

NameTypeDefault
defaultColorcolor#3b82f6
showHexbooleantrue
palettestring#ef4444,#f59e0b,#22c55e,#3b82f6,#8b5cf6,#ec4899,#000000,#ffffff
variableIdstring

Events

onColorChange
Category: inputNo children
Time PickerTimePicker

Pick a time (hours and minutes) — for alarms, scheduling, reminders

Properties

NameTypeDefault
formatselect12h
defaultTimestring09:00
variableIdstring

Events

onTimeChange
Category: inputNo children
Rating BarRatingBar

Star rating component — 1 to 5 stars for reviews and feedback

Properties

NameTypeDefault
maxStarsnumber5
defaultRatingnumber0
sizenumber28
activeColorcolor#f59e0b
inactiveColorcolor#e2e8f0
readOnlybooleanfalse
variableIdstring

Events

onRatingChange
Category: inputNo children
Stepper / Number PickerStepper

Increment/decrement number with + and - buttons

Properties

NameTypeDefault
minnumber0
maxnumber100
stepnumber1
defaultValuenumber0
variableIdstring

Events

onChange
Category: inputNo children
Chip / Tag GroupChipGroup

Selectable chips/tags — for filters, categories, multi-select

Properties

NameTypeDefault
chipsstringOption 1,Option 2,Option 3
multiSelectbooleanfalse
activeColorcolor#3b82f6
variableIdstring

Events

onChipSelectonChipDeselect
Category: inputNo children
Search BarSearchBar

Search input with icon, clear button, and voice search option

Properties

NameTypeDefault
placeholderstringSearch...
showVoicebooleanfalse
showClearbooleantrue
variableIdstring

Events

onSearchonChangeonClearonVoice
Category: inputNo children
OTP InputOTPInput

A verification code input with separate digit boxes

Properties

NameTypeDefault
lengthnumber6
variableIdstring
secureTextEntrybooleanfalse

Events

onChangeonComplete
Category: inputNo children
CalendarCalendar

A monthly calendar view for selecting dates

Properties

NameTypeDefault
variableIdstring
minDatestring
maxDatestring
highlightTodaybooleantrue

Events

onDateSelect
Category: inputNo children
Rich Text EditorRichTextEditor

A text editor with bold, italic, and list formatting

Properties

NameTypeDefault
variableIdstring
placeholderstringStart typing...
minHeightnumber200

Events

onChange
Category: inputNo children
Quantity StepperQuantityStepper

+/- quantity selector for cart items

Properties

NameTypeDefault
variableIdstring
minnumber1
maxnumber99

Events

onChange
Category: inputSub: E-CommerceNo children
Coupon InputCouponInput

Promo code input with apply button

Properties

NameTypeDefault
variableIdstring
placeholderstringEnter coupon code
buttonTextstringApply

Events

onApply
Category: inputSub: E-CommerceNo children
Chat InputChatInput

Text input with send button and attachment

Properties

NameTypeDefault
variableIdstring
placeholderstringType a message...
showAttachmentbooleantrue

Events

onSendonAttachment
Category: inputSub: ChatNo children
Like ButtonLikeButton

Animated like/heart button with count

Properties

NameTypeDefault
countnumber0
variableIdstring
likedbooleanfalse
likedVariableIdstring
colorcolor#ef4444

Events

onPress
Category: inputSub: SocialNo children
Swipe ButtonSwipeButton

Swipe-to-confirm button with animated slider thumb, icon, and label

Properties

NameTypeDefault
titlestringSwipe to confirm
thumbIconiconChevronRight
trailIconicon
thumbColorcolor#c8ff00
trackColorcolor#2a2a1e
textColorcolor#ffffff
thumbSizenumber52
resetAfterSlidebooleantrue
disabledbooleanfalse

Events

onSlideComplete
Category: inputNo children

Data4

ListList

Displays a scrollable list of items from data

Properties

NameTypeDefault
dataSourceIdstring
variableIdstring
emptyTextstringNo items
showDividerbooleantrue
itemHeightnumber56

Events

onItemPressonRefresh
Category: dataNo children
Data TableDataTable

Displays data in rows and columns like a spreadsheet

Properties

NameTypeDefault
variableIdstring
columnsstring

Events

onRowPress
Category: dataNo children
Message ListMessageList

Scrollable chat messages container (auto-scrolls to bottom)

Properties

NameTypeDefault
variableIdstring
emptyTextstringNo messages yet

Events

onItemPress
Category: dataSub: ChatNo children
Kanban BoardKanbanBoard

Drag-and-drop columns (Todo/Doing/Done)

Properties

NameTypeDefault
columnsstringTodo,In Progress,Done
variableIdstring

Events

onTaskMoveonTaskPress
Category: dataSub: ProductivityNo children

Storage3

Local StorageLocalStorage

Save and load data on the device. Data persists between app sessions.

Properties

NameTypeDefault
namespacestringapp_data
Category: storageNo children
Cloud DatabaseCloudDB

Store data in the cloud. Sync across devices. Requires Supabase setup.

Properties

NameTypeDefault
providerselectsupabase
apiUrlstring
apiKeystring
Category: storageNo children
File StorageFileStorage

Upload and download files. Store images, documents, and media.

Properties

NameTypeDefault
providerselectlocal
Category: storageNo children

Feedback7

SnackbarSnackbar

A brief message bar at the bottom of the screen with an optional action

Properties

NameTypeDefault
messagestringAction completed
actionLabelstring
visiblebooleanfalse

Events

onActiononDismiss
Category: feedbackNo children
Local NotificationLocalNotification

Schedule local notifications on the device — no server needed

Properties

NameTypeDefault
titlestringReminder
bodystring
channelIdstringdefault

Events

onNotificationPressed
Category: feedbackNo children
Alert DialogAlertDialog

Alert dialog with icon, title, message, and confirm/cancel buttons

Properties

NameTypeDefault
visiblebooleanfalse
iconiconAlertCircle
iconColorcolor#ef4444
titlestringAre you sure?
messagestringThis action cannot be undone.
confirmTextstringConfirm
cancelTextstringCancel
confirmColorcolor#ef4444
variantselectdefault

Events

onConfirmonCancelonDismiss
Category: feedbackNo children
Confirm DialogConfirmDialog

Success/info dialog with image or icon, title, message, and action buttons

Properties

NameTypeDefault
visiblebooleanfalse
imageimage
iconiconCheckCircle
iconColorcolor#22c55e
titlestringSuccess!
messagestringYour action was completed.
primaryTextstringContinue
secondaryTextstring
primaryColorcolor#3b82f6

Events

onPrimaryonSecondaryonDismiss
Category: feedbackNo children
Input DialogInputDialog

Dialog with text input — for prompts, rename, etc.

Properties

NameTypeDefault
visiblebooleanfalse
titlestringEnter Value
messagestring
placeholderstringType here...
inputTypeselecttext
confirmTextstringSubmit
cancelTextstringCancel
confirmColorcolor#3b82f6
variableIdstring

Events

onSubmitonCancel
Category: feedbackNo children
Action SheetActionSheet

Bottom slide-up sheet with action options — like iOS action sheet

Properties

NameTypeDefault
visiblebooleanfalse
titlestringChoose an option
optionsstringEdit,Share,Delete
destructiveIndexnumber-1
cancelTextstringCancel

Events

onSelectonCancel
Category: feedbackNo children
Loading DialogLoadingDialog

Loading overlay with spinner and optional message

Properties

NameTypeDefault
visiblebooleanfalse
messagestringPlease wait...
variantselectoverlay
spinnerColorcolor#3b82f6
Category: feedbackNo children

Monetization32

AdMob BannerAdMobBanner

Displays a Google AdMob banner ad

Properties

NameTypeDefault
adUnitIdstring
sizeselectBANNER
testModebooleantrue
visiblebooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClicked
Category: monetizationSub: Google AdMobNo children
AdMob InterstitialAdMobInterstitial

Full-screen Google AdMob interstitial ad (shown via flow)

Properties

NameTypeDefault
adUnitIdstring
testModebooleantrue
autoLoadbooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClosedonAdShowed
Category: monetizationSub: Google AdMobNo children
AdMob RewardedAdMobRewarded

Google AdMob rewarded video ad — user watches ad to earn reward

Properties

NameTypeDefault
adUnitIdstring
testModebooleantrue
autoLoadbooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClosedonRewarded
Category: monetizationSub: Google AdMobNo children
AdMob Native AdAdMobNative

Google AdMob native ad that blends with your app content

Properties

NameTypeDefault
adUnitIdstring
testModebooleantrue
mediaAspectRatioselectANY
visiblebooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClickedonAdImpression
Category: monetizationSub: Google AdMobNo children
AdMob App OpenAdMobAppOpen

Google AdMob app open ad shown when app comes to foreground

Properties

NameTypeDefault
adUnitIdstring
testModebooleantrue
autoShowbooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClosedonAdShowed
Category: monetizationSub: Google AdMobNo children
AdMob Rewarded InterstitialAdMobRewardedInterstitial

Google AdMob rewarded interstitial — full-screen ad with optional reward

Properties

NameTypeDefault
adUnitIdstring
testModebooleantrue
autoLoadbooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClosedonRewarded
Category: monetizationSub: Google AdMobNo children
Ad Manager BannerAdManagerBanner

Google Ad Manager banner ad

Properties

NameTypeDefault
adUnitIdstring
sizeselectBANNER
testModebooleantrue
visiblebooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClickedonAppEvent
Category: monetizationSub: Google Ad ManagerNo children
Ad Manager InterstitialAdManagerInterstitial

Google Ad Manager full-screen interstitial ad

Properties

NameTypeDefault
adUnitIdstring
testModebooleantrue
autoLoadbooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClosedonAdShowedonAppEvent
Category: monetizationSub: Google Ad ManagerNo children
Ad Manager RewardedAdManagerRewarded

Google Ad Manager rewarded video ad

Properties

NameTypeDefault
adUnitIdstring
testModebooleantrue
autoLoadbooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClosedonRewarded
Category: monetizationSub: Google Ad ManagerNo children
Ad Manager Native AdAdManagerNative

Google Ad Manager native ad layout that blends with app content

Properties

NameTypeDefault
adUnitIdstring
testModebooleantrue
mediaAspectRatioselectANY
visiblebooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClickedonAdImpressiononAppEvent
Category: monetizationSub: Google Ad ManagerNo children
Ad Manager App OpenAdManagerAppOpen

Google Ad Manager app open ad shown when app comes to foreground

Properties

NameTypeDefault
adUnitIdstring
testModebooleantrue
autoShowbooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClosedonAdShowed
Category: monetizationSub: Google Ad ManagerNo children
Ad Manager Rewarded InterstitialAdManagerRewardedInterstitial

Google Ad Manager rewarded interstitial ad

Properties

NameTypeDefault
adUnitIdstring
testModebooleantrue
autoLoadbooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClosedonRewarded
Category: monetizationSub: Google Ad ManagerNo children
Facebook BannerFacebookBanner

Displays a Meta Audience Network banner ad

Properties

NameTypeDefault
placementIdstring
sizeselectSTANDARD
visiblebooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClicked
Category: monetizationSub: Meta AdsNo children
Facebook InterstitialFacebookInterstitial

Full-screen Meta Audience Network interstitial ad

Properties

NameTypeDefault
placementIdstring
autoLoadbooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClosed
Category: monetizationSub: Meta AdsNo children
Facebook RewardedFacebookRewarded

Meta Audience Network rewarded video ad

Properties

NameTypeDefault
placementIdstring
autoLoadbooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClosedonRewarded
Category: monetizationSub: Meta AdsNo children
Unity BannerUnityBanner

Displays a Unity Ads banner

Properties

NameTypeDefault
gameIdstring
placementIdstringbanner
testModebooleantrue
visiblebooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClicked
Category: monetizationSub: Unity AdsNo children
Unity InterstitialUnityInterstitial

Full-screen Unity Ads interstitial

Properties

NameTypeDefault
gameIdstring
placementIdstringinterstitial
testModebooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClosedonAdShowed
Category: monetizationSub: Unity AdsNo children
Unity RewardedUnityRewarded

Unity Ads rewarded video — user watches ad for reward

Properties

NameTypeDefault
gameIdstring
placementIdstringrewarded
testModebooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClosedonRewarded
Category: monetizationSub: Unity AdsNo children
AppLovin BannerAppLovinBanner

AppLovin MAX banner ad

Properties

NameTypeDefault
adUnitIdstring
sizeselectBANNER
visiblebooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClicked
Category: monetizationSub: AppLovinNo children
AppLovin InterstitialAppLovinInterstitial

AppLovin MAX full-screen interstitial ad

Properties

NameTypeDefault
adUnitIdstring

Events

onAdLoadedonAdFailedToLoadonAdClosedonAdShowed
Category: monetizationSub: AppLovinNo children
AppLovin RewardedAppLovinRewarded

AppLovin MAX rewarded video ad

Properties

NameTypeDefault
adUnitIdstring

Events

onAdLoadedonAdFailedToLoadonAdClosedonRewarded
Category: monetizationSub: AppLovinNo children
Start.io BannerStartIoBanner

Start.io banner ad

Properties

NameTypeDefault
appIdstring
sizeselectBANNER
visiblebooleantrue

Events

onAdLoadedonAdFailedToLoadonAdClicked
Category: monetizationSub: Start.ioNo children
Start.io InterstitialStartIoInterstitial

Start.io full-screen interstitial ad

Properties

NameTypeDefault
appIdstring

Events

onAdLoadedonAdFailedToLoadonAdClosed
Category: monetizationSub: Start.ioNo children
Start.io RewardedStartIoRewarded

Start.io rewarded video ad

Properties

NameTypeDefault
appIdstring

Events

onAdLoadedonAdFailedToLoadonAdClosedonRewarded
Category: monetizationSub: Start.ioNo children
Razorpay Pay ButtonRazorpayButton

Accept payments via Razorpay. Supports UPI, cards, netbanking, wallets.

Properties

NameTypeDefault
apiKeystring
amountnumber10000
currencyselectINR
namestringMy Store
descriptionstringPurchase
buttonTextstringPay Now
colorcolor#528FF0
prefillEmailstring
prefillPhonestring

Events

onPaymentSuccessonPaymentErroronPaymentDismissed
Category: monetizationSub: PaymentsNo children
Stripe Pay ButtonStripeButton

Accept payments via Stripe. Supports cards, Apple Pay, Google Pay.

Properties

NameTypeDefault
publishableKeystring
amountnumber1000
currencyselectusd
buttonTextstringPay with Card
descriptionstringPurchase

Events

onPaymentSuccessonPaymentErroronPaymentDismissed
Category: monetizationSub: PaymentsNo children
PayPal Pay ButtonPayPalButton

Accept payments via PayPal. One-time and subscription payments.

Properties

NameTypeDefault
clientIdstring
amountnumber10
currencyselectUSD
buttonTextstringPay with PayPal

Events

onPaymentSuccessonPaymentErroronPaymentCancelled
Category: monetizationSub: PaymentsNo children
In-App PurchaseInAppPurchase

Sell digital products or subscriptions within your app (Google Play / App Store).

Properties

NameTypeDefault
productIdstring
productTypeselectone_time
buttonTextstringPurchase

Events

onPurchaseSuccessonPurchaseErroronPurchaseRestored
Category: monetizationSub: PaymentsNo children
Play Store ReviewPlayStoreReview

Prompt users to rate and review your app on Google Play Store

Properties

NameTypeDefault
minLaunchesnumber5
minDaysnumber3

Events

onReviewSubmittedonReviewDismissed
Category: monetizationSub: Play StoreNo children
Play Store UpdatePlayStoreUpdate

Check for app updates and prompt users to update from Google Play Store

Properties

NameTypeDefault
updateModeselectflexible
checkOnLoadbooleantrue

Events

onUpdateAvailableonUpdateDownloadedonNoUpdate
Category: monetizationSub: Play StoreNo children
Google Play BillingGooglePlayBilling

Accept payments through Google Play Store — one-time purchases, subscriptions, and consumables

Properties

NameTypeDefault
productIdsstring
purchaseTypeselectinapp
buttonTextstringBuy Now
autoFetchPricesbooleantrue

Events

onPurchaseSuccessonPurchaseErroronPurchasePendingonPricesLoaded
Category: monetizationSub: Play StoreNo children
Play Store SubscriptionPlayStoreSubscription

Manage recurring subscriptions via Google Play — monthly, yearly, free trial

Properties

NameTypeDefault
subscriptionIdstring
planIdstring
offerIdstring
buttonTextstringSubscribe
showPricebooleantrue

Events

onSubscribedonSubscriptionErroronSubscriptionCancelledonSubscriptionExpired
Category: monetizationSub: Play StoreNo children

Authentication9

Google Sign-InGoogleSignIn

Lets users sign in with their Google account

Properties

NameTypeDefault
clientIdstring
scopesstringemail,profile
autoSignInbooleanfalse

Events

onSignInonSignOutonError
Category: authenticationSub: GoogleNo children
Facebook LoginFacebookLogin

Lets users sign in with their Facebook account

Properties

NameTypeDefault
appIdstring
permissionsstringpublic_profile,email

Events

onLoginonLogoutonError
Category: authenticationSub: FacebookNo children
Firebase Email AuthFirebaseAuth

Firebase email/password authentication

Properties

NameTypeDefault
projectIdstring
apiKeystring
allowSignUpbooleantrue
emailVerificationbooleanfalse

Events

onSignInonSignUponSignOutonPasswordResetonError
Category: authenticationSub: FirebaseNo children
Firebase Google AuthFirebaseGoogleAuth

Sign in with Google via Firebase Authentication

Properties

NameTypeDefault
projectIdstring
apiKeystring
clientIdstring

Events

onSignInonSignOutonError
Category: authenticationSub: FirebaseNo children
Firebase Phone AuthFirebasePhoneAuth

Sign in with phone number via Firebase (OTP verification)

Properties

NameTypeDefault
projectIdstring
apiKeystring
timeoutnumber60
autoVerifybooleantrue

Events

onCodeSentonSignInonError
Category: authenticationSub: FirebaseNo children
Apple Sign-InAppleSignIn

Lets users sign in with their Apple ID (iOS)

Properties

NameTypeDefault
serviceIdstring
requestedScopesstringfullName,email

Events

onSignInonSignOutonError
Category: authenticationSub: AppleNo children
GitHub LoginGitHubLogin

Lets users sign in with their GitHub account

Properties

NameTypeDefault
clientIdstring
scopesstringuser:email

Events

onLoginonLogoutonError
Category: authenticationSub: GitHubNo children
Twitter/X LoginTwitterLogin

Lets users sign in with their Twitter/X account

Properties

NameTypeDefault
apiKeystring
apiSecretstring

Events

onLoginonLogoutonError
Category: authenticationSub: Twitter/XNo children
Biometric AuthBiometricAuth

Authenticate using fingerprint or Face ID

Properties

NameTypeDefault
promptTitlestringAuthenticate
promptSubtitlestringUse biometrics to continue
cancelTextstringCancel

Events

onAuthSuccessonAuthErroronAuthNotAvailable
Category: authenticationNo children

Firebase7

Firebase Realtime DBFirebaseDatabase

Read and write data to Firebase Realtime Database

Properties

NameTypeDefault
projectIdstring
apiKeystring
databaseUrlstring
pathstring/

Events

onDataReceivedonDataChangedonError
Category: firebaseSub: DatabaseNo children
Firebase FirestoreFirebaseFirestore

Read and write documents in Cloud Firestore

Properties

NameTypeDefault
projectIdstring
apiKeystring
collectionstring

Events

onDocumentReceivedonQueryResultonError
Category: firebaseSub: DatabaseNo children
Firebase StorageFirebaseStorage

Upload and download files from Firebase Cloud Storage

Properties

NameTypeDefault
projectIdstring
apiKeystring
storageBucketstring
maxFileSizenumber10

Events

onUploadCompleteonDownloadCompleteonProgressonError
Category: firebaseSub: StorageNo children
Firebase Push NotificationsFirebaseMessaging

Send and receive push notifications via Firebase Cloud Messaging

Properties

NameTypeDefault
projectIdstring
apiKeystring
topicstring
requestPermissionbooleantrue

Events

onMessageReceivedonTokenReceivedonError
Category: firebaseSub: MessagingNo children
Firebase AnalyticsFirebaseAnalytics

Track user events and app usage with Firebase Analytics

Properties

NameTypeDefault
projectIdstring
apiKeystring
analyticsEnabledbooleantrue
sessionTimeoutnumber30
Category: firebaseSub: AnalyticsNo children
Firebase CrashlyticsFirebaseCrashlytics

Automatic crash reporting with Firebase Crashlytics

Properties

NameTypeDefault
projectIdstring
apiKeystring
enabledbooleantrue
collectUserIdbooleanfalse
Category: firebaseSub: AnalyticsNo children
Firebase Remote ConfigFirebaseRemoteConfig

Remotely configure your app without publishing updates

Properties

NameTypeDefault
projectIdstring
apiKeystring
fetchIntervalnumber3600
defaultsstring{}

Events

onFetchCompleteonError
Category: firebaseSub: ConfigNo children

Social6

Share ButtonShareButton

Native share dialog to share text, links, or images

Properties

NameTypeDefault
titlestringShare
messagestring
urlstring
variantselectprimary

Events

onShareCompleteonShareDismissedonError
Category: socialNo children
Deep LinkDeepLink

Handle deep links and universal links to open specific screens

Properties

NameTypeDefault
schemestringmyapp
hoststring
pathPrefixstring/

Events

onLinkReceived
Category: socialNo children
Activity StarterActivityStarter

Launch other apps or Android intents — open settings, maps, other apps

Properties

NameTypeDefault
actionselectandroid.intent.action.VIEW
customActionstring
dataUristring
dataTypestring
packageNamestring
classNamestring
extraKeystring
extraValuestring

Events

onActivityResultonError
Category: socialNo children
SMS SenderSMSSender

Send SMS messages via device intent

Properties

NameTypeDefault
phoneNumberstring
messagestring

Events

onSentonError
Category: socialNo children
Email SenderEmailSender

Send emails via device email app

Properties

NameTypeDefault
tostring
subjectstring
bodystring

Events

onSent
Category: socialNo children
Phone CallPhoneCall

Initiate a phone call via device dialer

Properties

NameTypeDefault
phoneNumberstring

Events

onCallStarted
Category: socialNo children

Media20

Flashlight / TorchFlashlight

Control the device flashlight/torch

Category: mediaNo children
Battery StatusBatteryStatus

Get device battery level and charging status

Events

onBatteryChange
Category: mediaNo children
AccelerometerAccelerometer

Detect device motion and orientation changes

Properties

NameTypeDefault
updateIntervalnumber100

Events

onAccelerometerChange
Category: mediaNo children
GyroscopeGyroscope

Detect device rotation rate

Properties

NameTypeDefault
updateIntervalnumber100

Events

onGyroscopeChange
Category: mediaNo children
Bluetooth AdminBluetoothAdmin

Check Bluetooth status, enable/disable, get device name and address

Events

onStateChanged
Category: mediaNo children
Bluetooth ClientBluetoothClient

Connect to other Bluetooth devices — Arduino, printers, sensors. Your app initiates the connection.

Properties

NameTypeDefault
uuidstring00001101-0000-1000-8000-00805F9B34FB
securebooleantrue

Events

onConnectedonDisconnectedonDataReceivedonError
Category: mediaNo children
Bluetooth ServerBluetoothServer

Accept incoming Bluetooth connections — your app listens and waits for other devices.

Properties

NameTypeDefault
uuidstring00001101-0000-1000-8000-00805F9B34FB
namestringCodularBT

Events

onClientConnectedonClientDisconnectedonDataReceivedonError
Category: mediaNo children
NFC Reader/WriterNFC

Read and write NFC tags

Events

onTagReadonTagWrittenonError
Category: mediaNo children
Arduino / SerialArduino

Communicate with Arduino and serial devices over Bluetooth or USB

Properties

NameTypeDefault
connectionTypeselectbluetooth
baudRateselect9600
delimiterstring\n

Events

onDataReceivedonConnectedonDisconnectedonError
Category: mediaNo children
FTP ClientFTP

Upload and download files via FTP/SFTP server

Properties

NameTypeDefault
hoststring
portnumber21
usernamestring
passwordstring
securebooleanfalse

Events

onConnectedonUploadCompleteonDownloadCompleteonError
Category: mediaNo children
Network StatusNetworkStatus

Check internet connectivity — WiFi, mobile data, offline detection

Events

onConnectedonDisconnectedonTypeChanged
Category: mediaNo children
PrinterPrinter

Print documents, images, or HTML content to any connected printer (WiFi, USB, system print dialog)

Properties

NameTypeDefault
printTypeselecthtml
contentstring
jobNamestringPrint Job

Events

onPrintCompleteonPrintErroronPrintCancelled
Category: mediaNo children
Thermal PrinterThermalPrinter

Print receipts and labels via Bluetooth or USB thermal printer (ESC/POS compatible)

Properties

NameTypeDefault
connectionTypeselectbluetooth
deviceAddressstring
portnumber9100
paperWidthselect58
encodingselectUTF-8

Events

onConnectedonDisconnectedonPrintCompleteonError
Category: mediaNo children
WiFi StatusWifiStatus

Get WiFi connection status and network info

Events

onWifiChange
Category: mediaNo children
Screen BrightnessScreenBrightness

Get and set screen brightness level

Category: mediaNo children
Text to SpeechTextToSpeech

Convert text to spoken audio

Properties

NameTypeDefault
languageselecten-US
pitchnumber1
ratenumber1

Events

onSpeakStartonSpeakDoneonError
Category: mediaNo children
Speech to TextSpeechToText

Convert spoken audio to text using device microphone

Properties

NameTypeDefault
languageselecten-US
continuousbooleanfalse

Events

onResultonPartialResultonError
Category: mediaNo children
File PickerFilePicker

Pick any file from device storage

Properties

NameTypeDefault
fileTypesselect*/*
multiplebooleanfalse

Events

onFilePickedonError
Category: mediaNo children
File DownloaderFileDownloader

Download files from URL to device storage

Properties

NameTypeDefault
urlstring
fileNamestring

Events

onDownloadCompleteonDownloadProgressonError
Category: mediaNo children
GeofencingGeofencing

Monitor when device enters or exits a geographic area

Properties

NameTypeDefault
latitudenumber0
longitudenumber0
radiusnumber100

Events

onEnteronExit
Category: mediaNo children

Flow Nodes Reference

Visual logic building blocks - connect nodes to create app behavior

Trigger

Event (Start)
The starting point of a flow. Every flow begins here.
event

Action

Navigate to Screen
Go to another screen in your app.
navigate
Set Variable
Store a value in a variable for later use.
setVariable
Show Alert
Show a popup alert dialog with a title and message.
showAlert
Show Toast
Show a brief message at the bottom of the screen.
showToast
API Call
Send an HTTP request to a web API and get data back.
apiCall
Delay / Wait
Wait for a specified time before continuing.
delay

Logic

If / Else
Branch the flow based on a condition (true/false).
ifElse
Loop
Repeat a set of actions multiple times.
loop
Switch
Choose one of many paths based on a value.
switch

Data

Get Variable
Read the current value of a stored variable.
getVariable
Transform Data
Transform data using map, filter, or other operations.
transform
Console Log
Print a debug message to the console (for testing).
log

Storage

Save to Storage
Save a value to device storage. Persists when app is closed.
saveToStorage
Load from Storage
Load a previously saved value from device storage.
loadFromStorage
Remove from Storage
Delete a saved value from device storage.
removeFromStorage

Cloud DB

Read from Database
Fetch rows from a Supabase/Firebase table.
dbRead
Insert into Database
Add a new row to a Supabase/Firebase table.
dbInsert
Update in Database
Update existing rows in a table.
dbUpdate
Delete from Database
Delete rows from a table.
dbDelete

Auth

Sign In
Sign in user with Google, Facebook, Apple, email, or phone.
authSignIn
Sign Up
Create a new user account with email and password.
authSignUp
Sign Out
Sign the current user out of the app.
authSignOut
Get Current User
Get the signed-in user's info.
authGetUser

Social

Share
Open native share dialog with text, URL, or image.
share
Open URL
Open a web URL in the browser.
openUrl
Copy to Clipboard
Copy text to the device clipboard.
copyToClipboard
Vibrate
Vibrate the device for haptic feedback.
vibrate

Ads

Show Ad
Show an interstitial, rewarded, or app open ad.
showAd
Load Ad
Pre-load an ad so it's ready to show instantly.
loadAd

Firebase

Firestore Get
Get a document or query a collection from Firestore.
firestoreGet
Firestore Set
Create or update a document in Firestore.
firestoreSet
Firestore Delete
Delete a document from Firestore.
firestoreDelete
Realtime DB Get
Read data from Firebase Realtime Database.
firebaseDbGet
Realtime DB Set
Write data to Firebase Realtime Database.
firebaseDbSet
Send Notification
Send a push notification via FCM.
sendNotification
Log Analytics Event
Log a custom event to Firebase Analytics.
logAnalyticsEvent

Media

Take Photo
Take a photo using the device camera.
takePhoto
Pick Image
Pick an image from the device gallery.
pickImage
Scan QR Code
Scan a QR code or barcode.
scanQR
Get Location
Get the device's current GPS coordinates.
getCurrentLocation
Play Audio
Play an audio file or URL.
playAudio
Play Lottie
Play a Lottie animation component.
playLottie
Pause Lottie
Pause a Lottie animation.
pauseLottie
Reset Lottie
Reset a Lottie animation to the beginning.
resetLottie

Payments

Initiate Payment
Start payment via Razorpay, Stripe, or PayPal.
initiatePayment
Verify Payment
Verify payment with backend server.
verifyPayment
Restore Purchases
Restore in-app purchases.
restorePurchases
Purchase Product
Buy via Google Play Billing.
purchaseProduct
Check Subscription
Check if subscription is active.
checkSubscription
Cancel Subscription
Open Play Store to cancel subscription.
cancelSubscription

Play Store

Request Review
Show in-app review dialog.
requestReview
Check for Update
Check if new version available.
checkUpdate
Open Play Store
Open app's Play Store listing.
openPlayStore
Switch Tab
Switch active tab on BottomTabs.
switchTab

Device

Biometric Auth
Fingerprint or Face ID authentication.
authenticate
Toggle Flashlight
Turn flashlight on/off.
toggleFlashlight
Get Battery Level
Get battery percentage.
getBatteryLevel
Set Brightness
Set screen brightness.
setBrightness

Communication

Send SMS
Open SMS app with pre-filled message.
sendSMS
Send Email
Open email app.
sendEmail
Make Call
Open phone dialer.
makeCall

Speech

Speak Text
Text-to-speech.
speak
Stop Speaking
Stop TTS.
stopSpeaking
Start Listening
Speech-to-text.
startListening
Stop Listening
Stop recognition.
stopListening

Files

Pick File
Select file from device.
pickFile
Download File
Download from URL.
downloadFile

Timer

Start Timer
Start countdown.
startTimer
Pause Timer
Pause countdown.
pauseTimer
Reset Timer
Reset to start.
resetTimer
Start Stopwatch
Count up.
startStopwatch
Stop Stopwatch
Stop counting.
stopStopwatch

Notifications

Schedule Notification
Local notification.
scheduleNotification
Cancel Notification
Cancel scheduled.
cancelNotification

Sensors

Scan Bluetooth
Find BLE devices.
startBluetoothScan
Connect Bluetooth
Connect to BLE.
connectBluetooth
Read NFC
Read NFC tag.
readNFC
Write NFC
Write to NFC.
writeNFC
Start Geofence
Monitor area.
startGeofence

Extensions

Extend Codular with custom components and flow nodes. Create your own, import from the community, or share with others.

What Extensions Can Do

Custom Components

Add new UI components with custom properties and events. They appear in the Extensions category of the palette.

Custom Flow Nodes

Add new flow nodes with configurable inputs. They appear in the Nodes sidebar under your extension's name.

Share & Import

Export as .codular-ext files, publish to the community marketplace, or import extensions from other users.

Creating an Extension

1

Open your project in the builder

2

Go to Project > Extensions from the menu bar

3

In the Create Component tab, define your component's name, properties, events, and optional flow nodes

4

Click "Add to This Project" to register it immediately, or "Export .codular-ext" to save as a file

5

Your extension appears in the Extensions category (puzzle icon) in the component palette

6

Custom flow nodes appear in the Nodes sidebar under your extension's name

Extension Definition Format

{
  "type": "custom_rating_stars",
  "label": "Rating Stars",
  "description": "A star rating component",
  "icon": "Star",
  "acceptsChildren": false,
  "props": [
    { "name": "maxStars", "label": "Max Stars", "type": "number", "defaultValue": 5 },
    { "name": "color", "label": "Star Color", "type": "color", "defaultValue": "#f59e0b" }
  ],
  "events": ["onRatingChange"],
  "flowNodes": [
    {
      "type": "ext_set_rating",
      "label": "Set Rating",
      "description": "Set the rating value programmatically",
      "icon": "Star",
      "color": "#f59e0b",
      "inputs": [
        { "name": "value", "label": "Rating Value", "type": "number", "defaultValue": 0 },
        { "name": "targetVar", "label": "Save to Variable", "type": "variable", "defaultValue": "" }
      ]
    }
  ]
}

Importing Extensions

From file: Go to Project > Extensions > Import tab. Select a .codular-ext file.

From community: Browse the Community page, find an extension, and click Install.

The extension is registered in your project and saved automatically.

Properties & Events

Properties

Every component has configurable properties. Select a component on the canvas, and its properties appear in the right panel.

Property TypeDescriptionExample
stringText valueButton label, placeholder text
numberNumeric valueFont size, border radius
booleanTrue/false toggleVisible, disabled
colorColor pickerBackground color, text color
selectDropdown optionsAlignment, resize mode
imageImage URL or assetImage source, icon
variableBind to a variableDynamic text, list data

Events

Events fire when users interact with components. Connect events to flows to define behavior.

onPress

User taps the component

Used by: Button, Card, Container

onChange

Value changes (text input, switch)

Used by: TextInput, Switch, Slider

onSubmit

Form is submitted

Used by: TextInput

onLoad

Screen finishes loading

Used by: Screen

onRefresh

Pull-to-refresh triggered

Used by: SwipeRefresh

onTabChange

Tab selection changes

Used by: BottomTabs, TabLayout

Storage & API

Local Storage

Save data on the device that persists when the app is closed. Use the Save to Storage, Load from Storage, and Remove from Storage flow nodes.

Cloud Database (Supabase / Firebase)

Connect to Supabase or Firebase to store data in the cloud. Use the Cloud DB flow nodes (Read, Insert, Update, Delete).

Supabase Setup

  1. Create project at supabase.com
  2. API URL = Settings > API > Project URL
  3. API Key = Settings > API > anon public key
  4. Create tables in Table Editor first

Firebase Setup

  1. Create project at console.firebase.google.com
  2. API URL = Realtime Database URL
  3. API Key = Project Settings > Web API Key
  4. No google-services.json needed (REST API)

API Call

Use the API Call flow node to send HTTP requests. Supports GET, POST, PUT, DELETE methods. The response is automatically parsed as JSON and can be stored in a variable.

Asset Storage

Images and files are uploaded to Mobcraft Storage (cloud CDN). Each project gets its own folder. Max 50MB per file, 2GB total on the free tier.

TypeFormatsUse In
ImagesPNG, JPG, WebP, GIF, SVGImage component, Background Image, Avatar
FontsTTF, OTF, WOFF, WOFF2Font Family picker in Style panel
LottieJSON (Lottie animation files)LottieAnimation component
VideoMP4, WebM, MOVVideo component
AudioMP3, WAV, FLAC, AACAudioPlayer component, Play Audio flow node

Lottie Animations

Add rich animations to your app using Lottie. Upload a .json Lottie file to Assets, then use the LottieAnimation component.

LottieAnimation

Drag onto screen. Set source to a Lottie JSON URL or pick from assets.

Flow Control

Use Play Lottie, Pause Lottie, Reset Lottie nodes to control animations.

Events

onAnimationFinish, onAnimationLoop, onPress - trigger flows when animation completes.

Custom Fonts

Upload .ttf, .otf, or .woff font files in the Assets Manager. They appear in the Font Family dropdown in the Style panel for any text component.

Themes

Customize your app's appearance globally. Theme values are applied to all components.

PropertyDefaultDescription
primaryColor#3b82f6Main brand color (buttons, links, active states)
secondaryColor#8b5cf6Accent color for secondary actions
backgroundColor#f8fafcApp background color
surfaceColor#ffffffCard/surface background color
textColor#0f172aPrimary text color
textSecondaryColor#64748bSecondary/muted text color
errorColor#ef4444Error states and validation messages
fontFamilySystemDefault font for all text
borderRadius8Default border radius (px)

Edit themes in Project Settings or via the Theme panel in the builder.

Build & Export

Generate installable apps from your Codular project.

Android APK

Debug APK for testing on Android devices. Install directly - no Play Store needed.

Android AAB

App Bundle for publishing to Google Play Store. Smaller download size, optimized delivery.

How to Build

1

Save your project (Cmd+S or click Save)

2

Click the Build button in the toolbar

3

Choose APK (testing) or AAB (Play Store)

4

Wait for the build to complete (usually 2-5 minutes)

5

Download the built file when ready

iOS Support

iOS IPA builds are coming soon. Requires a macOS build server and Apple Developer account.

Companion App

Test your app live on your phone while you build. Changes appear instantly.

How to Connect

1

Open your project in the builder

2

Go to Project > Companion from the menu bar

3

A 6-character code appears - note it down

4

On your phone, open the Codular Companion app (or browser)

5

Enter the code to connect

6

Your app appears live on your phone - changes sync in real-time

Requirements

  • Phone and computer must be on the same WiFi network
  • Use your computer's local IP address (shown in the companion modal)
  • Companion works in any mobile browser - no app install required

Prefer Live Reload?

For testing the actual installed app (not a web preview), use Live Reload instead. It updates your real APK in real-time over USB or WiFi. See the Live Reload & USB Debug section.

Live Reload & USB Debug

Test your app changes instantly on your phone without rebuilding. Works over USB and WiFi.

Quick Start

1

Build and install your APK on the phone (one time only)

2

Open the Test menu in the builder menu bar

3

Click 'Live Reload' to enable it

4

Edit anything in the builder - text, styles, components, flows

5

Your phone updates automatically within 1-2 seconds

Connection Modes

USB Mode (Fastest)

Phone connected via USB cable. Updates in ~1 second.

  • Enable USB Debugging on phone
  • Connect via USB cable
  • Open USB Debug panel or use Test menu
  • Click Launch App (auto-enables Live Reload)

WiFi / Cloud Mode

No cable needed. Works over internet. Updates in ~2 seconds.

  • Phone connected to WiFi or mobile data
  • App installed with Live Reload support
  • Enable Live Reload from Test menu
  • Works from anywhere - no USB required

USB Debug Panel

The USB Debug panel (click USB icon in toolbar) provides full device management:

Install APK

Install the latest built APK on connected device

Launch App

Launch the app and auto-enable Live Reload

Screenshot

Capture a screenshot from the device

Watch Logs

View React Native error logs in real-time

Live Reload

Toggle real-time sync of builder changes

Device Selector

Choose which connected device to target

What Updates Live?

Updates Instantly

Text, colors, styles, components, layout, flows, variables, icons, background images, screens

Needs Rebuild

Native modules (camera, maps), app icon, splash screen, package name, new native packages

Live Reload Indicator

When Live Reload is active, a green "LIVE" badge appears in the top-right corner of your app on the phone. This confirms the connection is working. The badge never appears in production builds.

AI Assistant

Codular includes a built-in AI assistant that helps you build apps faster.

What AI Can Do

Generate Screens

Describe a screen and AI creates it with components, layout, and styling.

Add Components

Ask AI to add specific components to your current screen.

Create Flows

Describe app logic and AI generates the flow with connected nodes.

Modify Styles

Ask AI to change colors, spacing, fonts, or layout across your app.

How to Use

Click the chat icon in the toolbar to open the AI panel. Type your request in natural language.

Example Prompts

  • "Create a login screen with email and password fields"
  • "Add a todo list with an input field and add button"
  • "Make the button blue with rounded corners"
  • "Create a flow that saves the input text to a list when the button is pressed"