π¦ AI
π¦ AI text request
The **Text AI Query** block allows you to connect a scenario to text-based AI models (LLM) to generate dynamic and contextual responses, providing fluFew readersπ¦ AI image generation
The **AI Image Generation** block allows you to convert textual descriptions into dynamically generated images via integrated Artificial Intelligence Few readers
β¬ Comments
β¬ Story
The **Story** block allows you to create and manage linear or tree-based narrative experiences in a centralized manner, avoiding cluttering the canvasSome readers⬠Connector
The **Connector** block allows you to merge several paths in a graph to unify the flow towards a common scenario or to visually air out the graph by aSome readers⬠Comment
The **Comment** block allows you to add notes, explanations or reminders visible only in the editor, without impacting the execution of the project.Some readers
π© User Interaction
π¦ Dialogue
The **Dialogue** block allows you to display a series of messages sent by one or more characters, with media management and dynamic variables, to creaPopularπ© Start
The **Start** block allows you to define the absolute launch point of any Graph, Scenario or Celestory Module. It represents the starting line of logiPopularπ© Load video
Example link: https://creator.celestory.io/project/OqkScT5D5 The Load video block allows to create a video value which can then be sent to another block via a constituent point. It allows to use the url of a video (direct link) to display it in the user interface. To display a video player, like YouTube, read this article: https://documentation.celestory.io/en/article/insert-a-youtube-video-1horjlj/ Here we have indicated the direct link of the video in the url field of the block.  offered to the user. It plugs aSome readersπͺ Video choice
This is a combination of the Video block and the Choice block. The choices therefore appear directly at the end of the file playback. It is the perfect block for creating interactive videos. This blocks works as a mix of a Video and a Choice block, which means you will have to choose a document to be displayed. You will have to click on the icon corresponding to your document, thenSome readersπͺ Swipe
The **Swipe** block allows you to display an interactive interface in the form of a card (Tinder or Reigns style) where the player makes a decision bySome readersπͺ Alter clickable zone
The **Modify Clickable Area** block allows you to dynamically modify the state, appearance or activation of a clickable area in a visual block (like GSome readersπͺ Pause
The **Pause** block allows you to pause the execution of the flow for a defined duration before continuing with the next action.Few readersπͺ Generate JSON
The **Generate JSON** block allows you to convert simple data (text, numbers, lists, Booleans) into a structured JSON string, usable for API requests Few readersπͺ Date check
The **Date Check** block allows you to compare two dates to determine if an entry date is before a reference date.Few readersπͺ Audio choice
πͺ Audio choice . .Few readersπͺ Voltask Webhook
The **Voltask Webhook** block allows you to create a direct technological bridge between Celestory and Voltask by sending HTTP requests to this externFew readersπͺ QTE
The **QTE** block allows you to create a time-limited interactive event where the user must perform quick actions (like screen taps) to complete a chaFew readersπͺ Clickable zone
The **Clickable area** block allows you to create visual interactions directly on an image, by transforming predefined areas into clickable elements. Few readers
π₯ Flow Control
π₯ Condition
The **Condition** block allows you to create a logical referral by asking a closed question ("True or False?"). Depending on the answer, the story floPopularπ₯ Break
The **Interrupt** block allows you to pause execution to avoid βStack Overflowβ errors during repetitive loops, thus guaranteeing stable and smooth exSome readersπ₯ Sequence
The **Sequence** block allows you to distribute a flow to several outputs in a sequential and cyclical manner. Each time it is activated, it activatesSome readersπ₯ Word recognition
Example link: https://creator.celestory.io/project/XsIFyE3mE The Word Recognition block recognizes text expressions. Coupled with a Text input block, it allows to recognize text typed by the user. Once the block is created on the graph, you can click on the Words button to add expressions that the block will recognize. You can add several expressions per field, to doSome readersπ₯ Once
The **Once** block allows you to limit the execution of a flow to a single occurrence, acting as a logical "gate" (DoOnce/Gate). It blocks subsequent Some readersπ₯ Random path
The **Random Path** block allows you to draw a path from several possibilities to introduce variability and replayability into a story. Great for creaSome readersπ₯ Repeat
The **Repetition** block allows you to repeat an action or a flow a determined number of times, consecutively and linearly (equivalent to a *For* loopSome readers⬠No Reverse
The **No / Invert** block allows you to invert a Boolean value (True/False).Few readersπ₯ Words recognition
The **Word recognition** block allows you to recognize text expressions entered by the user and associate them with specific outputs according to defiFew readers
β¬ User interface (UI)
β¬ Run Javascript
The **Execute Javascript** block allows you to execute a custom JavaScript script within a Celestory module, offering the possibility of manipulating Some readers⬠Alert
The **Alert** block allows you to display a rich text message (Markdown) with an optional image. Its visual behavior differs depending on the templateSome readers⬠Set HUD (Head UP Display)
Link to the graph example: https://creator.celestory.io/project/1VqMc5WsZ Link to the video example: https://www.loom.com/share/7e9c5eb9af1147e48fe0029082889897 ⬠Set HUD (Head UP Display): The Head Up Display (HUD) allows you to display a persistent menu and its items in the upper part of the screen during the user experience. To create a HUD, you must first goSome readers⬠Hide HUD
The **Hide ATH** block allows you to temporarily or permanently hide the user interface (ATH/HUD) of a module, such as menus, navigation buttons and oSome readers⬠CSS
The **CSS** block allows you to inject style code (Cascading Style Sheets) to personalize the appearance of elements in an application, offering advanSome readers⬠HTML5
The **HTML5** block allows you to integrate and display tailor-made HTML code directly in a Celestory application. It provides the ability to design cFew readers⬠Open menu
The **Open Menu** block allows you to dynamically display a preconfigured menu interface in your Celestory project, such as a main menu, an inventory Few readers⬠Set HUD
The **Define ATH** block allows you to dynamically configure, display or hide superimposed interface elements (Head-Up Display or HUD) in a user experFew readers
π¨ Navigation
π¨ Open a graph
The **Open a graph** block allows you to structure your projects by separating the logic into several functional graphs, thus avoiding overly complex Some readersπ¨ Open module
The **Open a module** block allows you to navigate to the highest level of the tree structure of your Celestory project: change the Application ModuleSome readers
π¦ Data Processing
β¬ Airtable
The **Airtable** block allows you to connect your Celestory project to an Airtable database to read, modify, add or delete data. It is particularly usPopularπ¦Text Format
Blocks containing a text stack now have the same capacity as the Text Format block. Therefore, all of the next description is also correct for these blocks. The Text Format block is a block which allows you to replace certain variables (to be indicated by an unknown between singletons {{ }} which will create a point with the name of this unknown to be linked to the block of the corresponding variable). These variables can be numeric or textual, and will be replaced by their current value in thePopularπ¦ Random number
The **Random number** block allows you to generate a random numerical value between two user-defined limits. It is essential for introducing randomnesSome readersπ¦ Decrement
The **Decrement** block allows you to subtract a precise value from a **Number** type variable, providing a convenient shortcut for operations like reSome readers⬠Checkpoint
The **Save** block allows you to save the user's progress in the experiment, including their position in the graph and the values ββof the variables aSome readersπ¦ Add to list
The **Add to list** block allows you to add a new element at the end of an existing list. It is essential for managing collections of objects, choice Some readersπ¦ Webview
The **Web View** block allows you to integrate and display a complete web page directly in the interface of your Celestory application, without redireSome readers⬠Make
The **Make** block allows you to send data from your Celestory application to a Make scenario, thus connecting Celestory to thousands of external applSome readersπ¦ Assign
The **Assignment** block allows you to modify the value of a variable during an experiment. It is essential for dynamically updating data like a scoreSome readers⬠Zapier
The **Zapier** block allows Celestory to be integrated with thousands of online tools via the Zapier no-code automation platform. It sends data or triSome readersπ¦ List includes
The **List contains** block allows you to check if a specific element (text, number or boolean) is present in a given list.Some readersπ¦ Todays date
The **Today's Date** block allows you to retrieve the current date at the precise moment when the player passes through this block. It is particularlySome readers⬠Analytics
The **Analytics** block allows you to record an invisible event in Celestory statistics to track user behavior. It acts as a discreet marker that helpSome readersπ¦ Expression
The **Expression** block allows you to perform mathematical calculations or logical evaluations based on a custom formula. It acts as an advanced calcSome readersπ¦ Remove from list
The **Delete from list** block allows you to remove a specific element from a List (Array) type variable. It is essential for managing inventories, shSome readersπ¦ Increment
The **Increment** block allows you to increase the value of a numeric variable by a defined amount. It is particularly useful for managing scores, couSome readersπ¦ Not
The Not block allows to invert the value of a boolean variable (true to false or vice versa). This block must be linked to an Assign block.Some readers⬠Load checkpoint
The **Load Backup** block allows you to restore the user's progress from a previously saved backup.Some readersπ¦ Get from list
The **Retrieve from a list** block allows you to precisely access an element stored in a collection (list/array) by specifying its index.Some readersπ¦ Multiple assign
Multiple assignment is a block that lets you assign several values to several variables (which can be of different types, such as numeric or textual) at once, saving you time.Few readersπ¦ Loop through a list
The **Iterate through a list** block allows you to iterate over each element of a list to process them individually, like a `Foreach` loop in programmFew readers⬠Decode JSON
The **Decode JSON** block allows you to transform data in JSON text format (often from API or Webhooks) into individual variables that can be used in Few readersπ¦ Format text
The **Format text** block allows you to generate dynamic sentences by integrating variables into a model text (eg: *"Hello {{First name}}, you have {{Few readersπ¦ Multi Assign
The **Multiple Assignment** block allows several variables to be modified simultaneously in a single block, thus avoiding the repeated use of individuFew readers
