1:48 Welcome to this webinar on Building
with AppGen. This is the final one of 1:55 the AI Build Week. I am joined today
by my fantastic colleague, Alexis. 2:02 But before I started properly. we start this 2:05 properly. I wanted to post
some questions in the poll. 2:08 So, firstly. How many of you have used
vibe coding tools, like Lovable or Bolt? 2:13 And then secondly, how many of you would trust the
applications built there to put into production? 2:18 And maybe I'll just give everyone a
little bit of time to answer these. 2:37 So, in terms of what we'll
be covering today, and please 2:40 continue to answer the poll whilst I'm speaking. 2:43 What we'll be doing is we'll start
by covering what AppGen actually is. 2:46 And then the majority of the time will
actually spend building alongside Alexis. 2:51 So, hopefully all of you will have received an
invitation to the Retool instance. If you haven't. 2:59 I posted a link to the channel for how
you can join, and he's also posted a 3:04 link to the Google Doc, so please make
sure that you click on the Google Doc. 3:08 And please make sure that
you can join the instance. 3:10 If, for whatever reason,
you aren't in the instance, 3:13 if you just post your email in,
we'll be able to add you in. 3:18 Um, and then we'll end
briefly with some kind of Q&A. 3:22 So, what actually is AppGen,
and why do we need it? 3:27 The core reason… is… okay, so we can
actually see the results. So actually, 3:33 most of you still have never actually
vibecoded an application before, 3:36 but actually we're seeing about
30% have, which is interesting. 3:39 I'll be interested to the answer
to the next question as well. So, 3:43 you know, I think the core
reason why we need AppGen. 3:46 is pretty well explained in this slide. So,
AI tools… whether those are kind of… like, 3:53 code generation tools, like Claude Code or Cursor. 3:55 or at Generation tools like Lovable or Bolt, 3:58 so tools that let you go from
basically writing plain English. 4:02 to building an application for you,
has significantly sped up the process 4:05 of building applications, as well as
enabling new types of people to build. 4:10 But what they haven't necessarily done is speed up
the time to shipping applications into production. 4:15 And this is the fundamental
reason why we need AppGen. 4:18 Retool is the first platform that actually
lets you go from natural language prompt. 4:23 to fully deployed, secure production
application. But how do we actually do this? 4:29 It's essentially down to three things.
So, firstly, we sit on top of your data. 4:35 At Retool, we spent years building secure
connections to the most commonly used resources. 4:40 Whether that's internal APIs,
or popular ones like Stripe. 4:44 All your data warehouses, like
Snowflake or Databricks. We let 4:48 you build applications directly on top of
these, rather than simply using mock data. 4:54 Secondly, we handle deployment for you. So
once you've set up Retool, each application 4:59 is automatically available for your end users.
So either you can use our multi-tenant cloud. 5:04 Or you can deploy Retool inside of your VPC. 5:08 And finally, and potentially most
importantly. Resale is secure by 5:12 default. You can set things up, like SSO
and role-based access control centrally, 5:17 and have it apply to all of your applications. 5:19 permissions from Snowflake and Databricks
can be inherited inside the application. 5:24 you know, likewise, audit logs are included
out of the box on all applications. 5:28 You can also build in dev environments and enforce
rules for how it gets moved into production. 5:34 Essentially, our ambition is to make creating
software as easy as writing a document. 5:39 All whilst enforcing guardrails on governance.
This means you can go from idea to a working 5:44 application today, rather than waiting
weeks, or potentially never having what you. 5:48 E1. And with this, I'd like to hand over to Alexi. 5:51 who can actually show you how to do all of this. 5:55 Hello everybody, I'm Alexi, and I'm super
happy today to run this build-along. 6:00 What we're going to do today is build
a customer license application that's 6:04 going to allow us to track and
manage all of our customers. 6:07 This is going to be built on top of Snowflake. 6:09 And my goal today is to make you
much more comfortable when it 6:13 comes to building and vibecoding
applications into production. 6:17 There are 3 main things that we're
going to focus on. The first one 6:20 is around how can you create and
edit application using prompts. 6:24 The second part is all about understanding
the ecosystem. How do you secure, govern, 6:30 and connect to the different data sources
that you want for your entire applications? 6:33 Which is really exactly what
Ben just covered when it comes 6:36 to how we differentiate from a lot of
different vibe coding tools out there. 6:40 And finally, we're also going to explore other
ways that you can use our. which is called ASSIST, 6:47 which allows you to build and create applications,
using it to explain facts about retool, to debug, 6:52 or to just… understand more fully
what the context of an application is, 6:56 which are things that are very useful when
you're trying to maintain applications. 7:00 Now, I do have a quick disclaimer for
all of you. So if you can just go to 7:05 the next slide. We're building with
AI, and with vibecoding in general. 7:09 Now, I'm… For those of you who are familiar
with these kind of tools. We're all going 7:12 to put the same input in the same chart.
We're not all going to get the same output. 7:17 So, I am going to take a bit of time to make
sure that we can explore the different options, 7:21 and you can get to something
that's relatively close to mine. 7:24 So, uh, bear with me in that case, 7:26 and I'll make sure that quite a few of you
can follow along when we're going like this. 7:32 All this being said, I think
it's time for us to go into 7:34 the tool. I'll keep that one for later, Ben. 7:36 And if you don't mind, I'll just share my screen. 7:41 So, if I'm not mistaken, quite
a few of you should have by now, 7:44 so this is the document the
ASSIST webinar instructions. 7:47 If you don't have access
to this document, I think, 7:50 um, Amoveher is putting it in the chat right now. 7:53 This will really cover most of what
you need, and everything that you want. 7:57 to open the instance that we want, it's the
first link that you can find right here, 8:01 which is the EMEA agents, and as I
said, if you have any login issues, 8:05 please don't hesitate. Ask Amavir, and he will
be more than glad to add you to the instance. 8:11 So, I'll just open this up. And when we
open the instance, you should arrive to 8:17 something that's quite similar to this. You
probably won't have all the recent drafts, 8:21 that's… this is my work, so this should be
empty for you, but this is the basics of Retool. 8:25 I'm not going to go into what everything
happens here, we're directly going to the 8:29 prompting part. I'm just going to give you, um,
10 seconds to make sure that you can all log in. 8:34 And give you a bit of time for that. 8:41 Perfect. So, the way to create an application, 8:44 you can click on this button that's right
here, so the blue button, and create. 8:48 up. When you do this, it's going to open a canvas. 8:53 Some of you may have panels that are open,
so arrive on a page that looks like this, 8:57 or just a blank canvas. In any
case, you can collapse all of 9:00 them by using the little crosses that
you have on the top right-hand side. 9:05 So don't hesitate to use them
to get onto a blank campus. 9:09 Now, I suppose most of you are aware, in 2025, we
don't really start from blank canvases anymore. 9:14 We want to start with either templates or either
prompts, and this is exactly what we're gonna do. 9:20 To open up our prompt interface, you want
to go on the bottom left of the application, 9:25 and you can see right here, it's called Assist. 9:27 It's still a product in beta, so, 9:29 um, by the end of this, I will ask
you to add some feedback, if possible. 9:33 And, uh, you can open the different chat panel. 9:35 Here you have four different
prompts that are pre-built ones, 9:38 if you want to try this out on other use cases. 9:40 But what we're going to do today is
work on our customer license one. 9:45 To find the prompt, you can go back
to the instructions, and so you have 9:50 all the instructions on how to build the
application, and here right now, it's the, 9:53 uh, write a prompt in the chat interface,
so this is the one that you want to select. 9:57 And I'm gonna put it into the
chat. Do not present to right now, 10:01 because there's a bit of a caveat,
and I'll get into this just now. 10:04 The prompt is, let's create a customer
license application using Snowflake, 10:08 display a table with customer details, 10:10 include filters to find customers by customer
name and number of licenses, min and max. 10:15 Add actions to update and create
customers. So, as we can see, it's really, 10:19 um, a CRUD application, allowing us to
really see and edit all of our customers. 10:24 There's one thing, though. Here, as you can see, 10:27 the at Snowflake is written in normal text,
and that's not something that we want. 10:31 So, I'm going to ask you to
remove that, enter type, at. 10:36 This is the first thing that's quite different
from a lot of other Vibe coding tools that 10:39 you're probably aware of, is you have access
to all of the resources we've pre-configured. 10:44 Now, this is super powerful, because it
means that we're capable of giving our chat. 10:51 awareness around what the resources are
inside our ecosystem. And in this case, 10:55 the one we're going to use is the
Snowflake one that you can find right here. 10:59 And I'm gonna deep dive a bit
more into what resources are, 11:02 so you really understand what we're
doing when we're running this. 11:05 Now, I'm actually going to run this
script twice. This is just for me. 11:09 keep to the EMEA agents instance. I'll also
run it in my own instance, just in case. 11:14 Uh, as you can imagine, we're quite a few, 11:16 so uh… that there is a small chance
that I switch between quite a few taps. 11:21 When it comes to resources in general, this is
something that you can configure inside RETOR. 11:25 So the first part that I want to
look at is how do you get there? 11:29 If you click on the retool logo
that's on the top left-hand side, 11:33 the… in the drop-down, you'll find resources. 11:35 You can open this link, and
open… this is in a new tab. 11:39 This will be better, because otherwise the
chat could be interrupted if you don't do this. 11:44 And when you open the Resources tab, it's…
One of the main core aspects of our platform, 11:49 Retall allows you to connect to any and all
data. So, today we're connecting to Snowflake, 11:54 but let's say that I wanted to connect
to another data lake or another resource, 11:57 I could create this quite simply. 11:59 By clicking on Create New in the top right. 12:02 Clicking on resource, and here I have a
list of all the integrations that we have. 12:07 So, if you're using things like an API or Google
Sheets, or Postgres, that's something that you 12:12 can do. And in this case, we're talking about
data lakes. We have quite a few of them, like. 12:17 Databricks or BigQuery, or Snowflake
in our case. So you can pre… you can 12:21 pre-configure this, and as you
can see, in this build-along. 12:25 you're all using one that I've already configured, 12:28 which is Snowflake, which means that
that's the first thing that we can do, is. 12:31 reuse a pre-configured connection, 12:33 and we don't have to recreate this every
single time we're creating a new application. 12:38 This means that the connection that our
Vibe coding tool is making is always the 12:42 same one, and it adds a lot of
consistency to what we're doing. 12:45 Now, I'm going to show to you quite quickly
what the resource is directly. This one, 12:50 so it's this Snowflake instance that we're using. 12:52 Do not worry, the password is encrypted,
so you cannot access the Snowflake one. 12:57 Essentially, what is interesting about this is…
so, for those of you who aren't aware, Snowflake 13:03 is a data warehouse where you can store a lot of
data in different tables and different schemas. 13:08 What's interesting is that in our configuration, 13:11 we have something called
user roles inside Snowflake. 13:14 And essentially how a role works is you
can grant permissions to any given user, 13:20 so in this case to this user role, 13:21 so that he can only do certain actions inside
the data warehouse and the database layer. 13:26 In this case, we're using something called
Retool-write role, and as you can imagine, 13:30 this means that, um, well, our
connection is allowed to read, 13:34 but also write back data to our Snowflake
instance. This is very interesting, 13:39 because let's say that I was configuring
this tool so that anybody that was vibe 13:42 coding inside Retool would only allow it to read
data, I could configure a user role to do this. 13:47 Um, in Snowflake, call it read-only, for example, 13:50 and in that case, nobody would
be able to write back data. 13:53 It's a very good way of securing all
of your connections and making sure 13:57 that whatever you're building on top of these. 14:00 you have control over what's happening.
If I actually wanted to go even further, 14:04 here we're using a user role which is the same
for all of us, because it's in the configuration. 14:09 We could actually go one step further
in terms of authentication. Here, 14:12 it's basic authentication, we're all using the
same one. But I could also use things like. 14:17 co-auth, which is a per-user authentication. What
this means is, let's imagine that I was in the 14:22 marketing team, and you were in the financial
team. Well, I would only be allowed to see. 14:28 marketing data in my case, and you would
only be allowed to see financial data, 14:32 and this would be linked to
your own Snowflake account. 14:35 This is very powerful, because it
means that whatever you're building, 14:38 you'd be building on top of your specific user
interactions with the different resources. 14:42 And I've upgraded into inherits of this, which
really gives you a lot of control in Gironality, 14:48 and a lot of security around how you're building. 14:52 I'll make a quick stop here, and…
I think we've covered resources, 14:56 so what I'm gonna do is I'm going to go back
to the building part and see where we're at. 15:02 Now, there's quite a few things that we can see. 15:05 First of all, you can see that it's streaming
in live, and actually you can see this live as 15:10 I'm talking, that things are happening on our
screen. So there's quite a lot of information 15:13 that's going on, and I'm gonna try and
give you a better way to navigate this. 15:18 The first thing is, our assist tool works
in two phases. The first route is around. 15:24 planning, so creating a plan
about how it's going to answer 15:27 to the prompt that we've done. And the
second part is around implementing it. 15:31 So, as we can see, the plan right now that
it's created, and you probably have something 15:35 that's quite similar, is it's going to
explore the Snowflake database schema, 15:38 then it's going to design the application
layout and define the data flow independencies. 15:43 So essentially, what it's doing is that
it's first looking at the data we have. 15:47 Then, scaffolding the application to make
a layout that makes sense linked to this, 15:51 and then adding all of the logic and
business queries that we would want. 15:55 to make these applications work. So, in this case, 15:58 what I can see is that exploring the Snowflake
schema, it's found a table with customers. 16:04 It's found fields, things like
name, licenses, active licenses, 16:08 platform, revenue, industry. So, this is. 16:11 well, I mean, it's pretty good in the
sense that we're building a licensing app, 16:15 so at least it knows that it's going
to be able to go into that direction. 16:19 And then I can see, um, by toggling
down all on the different steps, 16:23 a bit more information around
what it's going to build. 16:27 Now, I find this actually very interesting, 16:29 because it's giving me a summary of
what it wants to build in Scaffold. 16:32 And if I'm trying to debug an application
or understand what's going on, 16:35 it's giving me a lot of information around that. 16:38 So what I can see, for example, on
the main page is that the first thing 16:42 that it wants to show me is text called
app title customer license management. 16:46 And if I go into my canvas, I can see that,
for now, I have something called app title, 16:50 and it probably, at some point will
change to Customer License Management. 16:54 At least, this is exactly what I'm
expecting from what I'm reading. 16:57 So this is the first way that you can sort
of navigate and understand what's going on, 17:01 is the interface will give you a lot of insight
around what's going on and what's happening. 17:05 It's the same thing when it comes to the technical
specifications. I won't get into the details, 17:10 but if you want to take 10-20 seconds to sort of
read this through to understand what's going on, 17:15 I think it's good for you to sort
of see… to see this in action. 17:18 There are a few things here, for example, that I
can see. I'm seeing actions like create customer 17:23 modal, so I'm expecting at some point to have
a modal in the workflows that I'm looking at. 17:27 And these are the kind of
things where I'm looking into. 17:31 Now, the second part that it's
doing is the implementation plan. 17:35 Everything about setting the app
theme, the containers, the modals, 17:38 the UI, and then getting into configuration
when it comes to the different components. 17:43 So, I'm going to scroll a bit down. There are
a few things that are interesting that we'll 17:47 get in. I can see that there's a mention of an
app theme, so I'll show you theming a bit later. 17:52 It's added quite a few UI components, 17:55 and right now it's configuring
component properties and labels. 17:58 So essentially what it's doing is going
over what we saw in the first part, in the. 18:04 Uh, in the themes and colors, and making sure
that everything is named in the right way. 18:09 What I am going to do is just check to see
if this one is a bit further down the line. 18:14 No, it isn't. Do not worry if it takes
a bit of time. I know that we're quite 18:17 a few building at the same time, which means
that… which generally doesn't happen this way, 18:21 where we're 30 people building
on top of the same instance. 18:24 So, it may take a bit of time, but
bear with me, we'll be more than fine. 18:30 By the way, what I can see right now is
that the app title has just been changed, 18:33 and now it's been Customer License Management. 18:37 What I'm gonna do right now is show you a bit more
of the configuration, because we've talked about. 18:43 resources in general, and how we can connect to
those part of the application and secure them. 18:48 But there's also something to see around, well, 18:51 permissions in general. Let's say that
I want to build an application where 18:54 there are certain parts where I want some
users to have access to, and others not. 18:58 Well, that's not directly linked to my
database layer, it's more linked to, um, 19:03 well, permissions in general in groups.
This is also something we can configure, 19:07 and I think it's a good time
for us to look at it right now. 19:10 If you wanted to do this, what you would do is, 19:12 though, you can click on the
Retool logo on the top left. 19:15 And you want to go to the settings. Now, 19:20 I believe right now, when it comes to the
settings that we have for EMEA agents. 19:24 quite a lot of you are not administrators
of the instance, of course, because we, 19:28 as you can imagine, I didn't want all of
you to be deleting all of the data and all 19:32 of the setups that we had. So, for this, I
think you have to watch this on my screen, 19:36 but if you want to afterwards look into
this on your own, if you set up an instance, 19:41 you'll be automatically admin
and have access to most of this. 19:45 So, when it comes to groups and permissions, 19:48 we can set up groups that have access
to different parts of our application, 19:51 and our vibe coding tool will inherit of a lot
of the security features that we're putting on. 19:57 So one example that I could give you is, 19:58 let's say that we wanted to create
this no snow snowflake group. 20:02 If I click on this, what I can see is. 20:05 all of the applications that are being built,
and I can decide if my users are going to have. 20:10 Uh, well, the granularity that
I want to give them access to, 20:12 if they're allowed to only use
the applications, edit them, 20:15 or if they own them entirely, which means
that they're also capable of deleting them. 20:19 The same goes for resources. In
our case, what I could do is… Um, 20:24 if we had two people from the marketing team,
but one of them was, like, a higher-end manager, 20:28 and the other one was somebody that
was quite down low in the organization. 20:31 Potentially, I wouldn't want them to
have access to the same marketing info, 20:34 but I would both want them to still be able
to read and write back from a database. 20:39 Well, in that case, what I could do is I
could set up on Snowflake different types of. 20:44 Uh, granularity as to what they're able to
see. So some of them would be able to use 20:48 and see Snowflake, whereas others wouldn't
even be allowed to see the Snowflake data. 20:53 So this is exactly how you would do this,
and if you want to know more about this, 20:57 feel free to ask me questions at the end. 20:59 There's going to be a Q&A session I can go
a bit deeper into this. But essentially, 21:02 you can create any group you want, set
permissions on application, resources, 21:07 and anything inside the retool environment,
which is going to allow us to go a bit further. 21:13 This being said, I'm going to
go back to what it's building. 21:18 What I can see right now is that it's actually
started building quite a few things, and I hope 21:22 for you too. I'm at a stage where it's asking
me to validate and run queries upon my data. 21:30 This is super important, because
essentially what I don't want is. 21:33 to run… well, this vibe
coding tool to run rampant, 21:36 and run any kind of query against my database. 21:39 And so right now, what I have is a preview of
this, and what I can see reading it is that, 21:44 essentially, this is a query that gets
data inside my inside my database. that 21:49 comes from my snowflake instance, and
it's applying a few of the filters. 21:53 I can even see that a few of the filters are
named, so I'm going to be able to re-find them 21:58 in my application afterwards. You have to
run these queries. You can run them… so I'm 22:02 gonna ask it to always run the queries,
so it's always gonna be prompted to me. 22:06 If you want to not have to, if you want it to
auto-accept, you can do this and auto-approve 22:11 all of the queries. I'm… with the prompt that I've
done, I'm expecting it to be two to three queries, 22:18 one to get the data, one to create a new
customer, and one to update a customer. 22:23 So, um, what we can see, by the way, is that
every single time that it's running something, 22:28 it's going to change slightly the
UI, tell you if it's worked or not, 22:31 and carry on to the next step of the execution. 22:34 I'll do the same thing on the
other end, as you can see. 22:37 both of them are kind of in sync.
It's also going to be interesting 22:42 to see the differences between
both of them later on the line. 22:46 And, uh, as I said, so please do
not forget to run them. You can 22:49 also decide to auto-approve them
if you think that that's, um. 22:53 the way to go for you. While this is running,
I want to bring your attention to another part 23:00 that's very interesting when
it comes to vibe coding, is… 23:04 One thing that's very complicated is to
have a good quality and output quality, 23:08 and have vibe coding tools follow best practices
when it comes to building applications. 23:14 The first thing that we can see is that
everything that I have in my canvas, 23:18 so if you look at the canvas on the
right-hand side, is named correctly. 23:21 I have things like. filter
container, like app title, 23:24 like, customers table. This is very good,
so it's… it's a very good best practice, 23:29 but what it's trying to do is follow
the best practices all of the time. 23:33 Another thing that's very interesting when
it comes to best practices is, generally, 23:37 this is something that you have when you, for
example, want to rebuild the same thing twice. 23:42 It's not using the exact same table. So if
you have a very big application with multiple 23:46 table components. Nuro is not always using
the same one. Because Retool historically, 23:53 it comes from the visual interface world, 23:55 where we have a design system and a lot of
different components. Everything that it's 23:59 building is also following the best practices
of our own library that we've created. 24:03 If you want to see this library, you can click
on the top left on this button, which is called 24:07 Add UI, and here you have all of the different
components that exist inside the retool library. 24:14 By the way, you can extend this by using
code if you really want very custom-made 24:18 components. And everything is creating right
now, so this customer table, for example, 24:23 is an exact representation of
the table that you see here. 24:26 So, it is a table with all of the configuration
panel on the right. And I'll get back to this. 24:31 Slightly after. Right now,
in terms of best practices, 24:36 so what we can see is that it's a step
10, it's binding the query to the data. 24:40 So essentially what it's doing is making sure that
our customer table will show the right things. 24:46 what I'm gonna do right now, since it's
taking a bit of time, is also look into. 24:51 the low-code aspect interface
of the editor. As you can see, 24:55 everything that we're building
is being shown on the canvas, 24:58 but I also have access to all of
these elements around across the 25:01 board. So I can click on them, I can
look in the inspector what's going on. 25:06 And this is very interesting
to me, because it means that I 25:08 have different levels of appreciation of
how I can see that things are going on. 25:13 Right now, for example, in this case, I can see
that it tells me that it's got no rows found, 25:17 and this is what I'm a bit interested by, because
I'm wondering why I don't see any customers. 25:22 Now, it tells me that the
data source, the getCustomers, 25:24 is empty. If I look at it when I open the
configuration panel. So if you have the same 25:29 thing as me and you want to see this,
you can click on the customers table. 25:32 Open the inspector, and potentially you'll
have this which says the selected data 25:36 source is empty. What I'm going to
do then is look at that data source. 25:40 So on the left-hand side, if I go down to
the fourth one, which is the code editor. 25:45 I'm going to see that I have a get customers query
right here, which is pre-populated with data. 25:51 By the way, this is exactly the
same script that you saw in the chat 25:55 interface. We've made sure that we always
have consistency when it comes to this. 26:00 So, I'm going to run this again to make
sure that there's no results returned, 26:04 and first of all, this is sort of
reassuring to me, because it means 26:07 that it isn't a problem between the connection
that I have from my query to my data source. 26:12 Now, when I look at this, the
first thing that I'm thinking 26:15 is that it's probably the filters
that aren't working as expected. 26:18 So I'm just going to remove the filters for now, 26:20 to make sure that nobody's
deleted the entire database. 26:24 So let me just test it out
and see if we can see things. 26:28 Okay, so my intuition was right on this case. As 26:32 we can see on the right-hand
side, I have access to the. 26:36 customers table, and in this case,
I can see that I've got data. 26:40 Now, I've more than certainly broken the
filters, so I'm not expecting this to work, 26:43 because I've removed them from the query. 26:45 But at least we know what the source is, 26:46 and it's gonna be a great use case for
when we start editing applications. 26:52 Next thing I'm going to do is just see if the…
So, the initial build is finished, as you can see. 26:57 Right now, the last step, generally,
is an explanation of what's been done. 27:01 So, what I'm going to do is I'm
just going to read this out, 27:04 and I'm also going to give
you 20 to 20 seconds-ish. 27:07 to make sure that you also have time to finish 27:09 your applications for those of
them who are building with me. 27:12 So what is it saying? It's saying that I built a
customer license management app using Snowflake, 27:17 I include… it includes a main table of customer
details, name, and min-max license filters. 27:22 Create and update customer flows, event handling
to refresh data, and close modals on success. 27:28 And so, essentially, it's telling me
that I've got an interface where I can. 27:33 Filter, create, and edit. So, let's test this out, 27:36 even though I do know that
the filter is not gonna work. 27:39 Now, if you want to look at the application
when it comes to, um, what it looks like. 27:44 The first thing that we're going to do
is we're going to click on this button. 27:47 You can view the application in edit mode, 27:49 I just feel as though it's a bit… it's a bit
nicer to use, as though you were an end user. 27:54 Now, for one, I can see that it's got the 50
results that I have. It's got a few tags for 27:59 iOS that I find kind of nice. I would have
liked to have them for the industry too. 28:04 It's… I've got to create customer modal, 28:07 so this is pretty good. I would have probably
wanted it to add a title here quite quickly. 28:11 Um, this looks pretty good. There's one thing
that I find a bit weird when I look at this, 28:17 is I don't see an ID field, so I'm
not going to try this right now, 28:20 but I am going to try and look
at what the edit part looks like. 28:23 So let's say that I want to edit this one. 28:26 And I'm just gonna call this…
Um, yeah, just add Enterprise, 28:32 for example, to this name, and change
the licenses. If I update the customer. 28:36 Is this working? Perfect. So the edit
model works. As you can see in my table, 28:42 I've got something that's already
working when it comes to editing it. 28:45 aerospace parts, uh, Enterprise has been added,
and I can take it away and go back to it. 28:52 So let me just update the customer. Um… By the
way, we're all using the same data source, so 28:57 it isn't impossible that a few of you, if you're
adding things, creating things, deleting things, 29:02 that my interface will also show. As I can
see, I've got 51 results, so one of you has. 29:06 probably added, uh, something
somewhere. So, if you see things 29:10 that are evolving that you haven't done,
it's completely normal. It's because, 29:13 well, we're all on the same instance,
and we're all using the same resource. 29:16 So that's actually extremely
good that I see one result more. 29:20 So, thanks to that builder who's doing
that, and if I've refresh this, you can 29:23 see 50… 50, and I should get to 51, because
somebody's… added a new instance to this. 29:31 So, what I want to do right now is take
a bit of a step back. What have we done? 29:36 We've done a one-shot prompt, which 29:38 essentially means that in a one-shot prompt,
we've got it to understand our connections. 29:43 to reuse the security that's linked to it.
We've got it to create custom fields or 29:49 filter fields that don't necessarily
work, but we're going to get there. 29:52 Create the different modals, and
view everything that we want to view. 29:55 So now, I'm going to go into, well… How do I edit
this? And what's the best way of editing this? 30:01 Now, the first thing that I want to say is that. 30:03 We can actually repeat the same process when
it comes to editing applications. So here, 30:08 what I want to do is actually say, well. 30:10 maybe the first thing that I want
to do is make the filters work, 30:13 and so that's what I'm going to try right
now, and this would be how I would do it 30:17 if I was building this application. I would
first try using it through the interface. 30:21 And when I used the first ad. I mentioned
resources, but there's another thing 30:26 that you can tag. You can actually tag
anything inside Retool. So my query name, 30:30 I'm going to refine the query name.
So to do this, I'm going to go on the. 30:33 Fourth tab and open this up. It's
called, uh, Get Customers Query. 30:38 And I'm gonna tag that resource… well, that
query specifically. So it's called… Create 30:44 customer query, and I'm gonna say… Can you, um…
can you please… change this so the filters apply. 30:54 And while I'm gonna run this, uh,
what I'm gonna do is that I'm going to 30:59 show you other ways that I can modify
things inside the Retool platform. 31:03 I'm actually also going to
just run this one in case, 31:06 so that we have… a better… another
example where I can run other threads on. 31:11 This is something that we do quite a lot
when you want to have threads in parallel, 31:14 just to show you a lot of the capabilities that
we have. So I'm going to auto-approve this, 31:18 save this so that this goes through.
Now, let me just get back to where I am. 31:24 So, we're going to go back to this.
Right now, what I can say is that. 31:28 We've seen that you can modify and edit
things through the chat interface. You 31:32 can also do this using the
no-code tools that we have. 31:35 So, for example, I don't think it makes a
lot of sense to have the create customer 31:39 button be right here, because it's in
the same… it's in a filter container, 31:42 and I don't think it should be there. I should
think it… I think it should be at the bottom. 31:47 When I'm doing these kind of things, generally, 31:49 vibe coding tools only allow you to
do things through the chat interface, 31:52 and so if you want to move a button, like,
20 pixels to the right or to the left. 31:57 you can't just do it in drag and dropping, 31:59 but this is something that we
can do. So to do this, you can. 32:03 simply take the button itself, drag and
drop it, and I'm going to put it downwards. 32:08 Now, is this the best UI ever? I don't know, 32:11 but I don't want things… I want
to separate things a bit more. 32:14 Also, as I mentioned, I thought
it would be a bit better if. 32:18 in the industry part, we saw tags instead of,
um, just, well, just classic text as we see here. 32:25 So what I'm gonna do, too, 32:27 is I'm going to click on the Customers
table, and go to the Inspector phase. 32:31 And right now, what I see here is all of the
configuration panel when it comes to a table. 32:36 And this is very powerful, because it's allowing
me to do what we call multimodal, chat, but also. 32:42 visual interface modifying. So let's say
that for some reason I wanted to show the 32:46 ID. If you click on the three buttons
on the right, you can show this column, 32:49 you can then re-re-hide it if you want
to. But what I want to do is change the 32:54 type of the industry column. So
I'm going to click on industry. 32:58 And here we see the format as a string, 33:00 and I'm going to change this
to… attack. Perfect. It works. 33:06 So this is sort of how I think when I'm going
through things. For very mind-changes where 33:11 I don't… where I can see it quite quickly, you
want to use, uh, directly the visual interface. 33:16 For more complex problems, or things where
it comes to logic, you can ask Assist. 33:20 And what I'm going to do is see what it's told me. 33:24 So… It's telling me, oh, I tagged the wrong
resource. Well, there you go. So that's why 33:31 it's… so this is… this is great. What
is it telling me? It's telling me that. 33:34 He wants to update the create customer query, 33:37 but it's an insert query. So what I'm trying to
do doesn't make sense, and he's completely right. 33:41 Right now, what's happening is that I don't
want… why would I add a filter to creating a 33:45 new resource? This doesn't make sense. So, the one
that I should have tagged is the getCustomerQuery. 33:51 Uh, for practical reasons, I'm then
gonna… I'm just gonna import this from 33:54 an application that I've already built that
listens a lot… well, resembles a lot to this. 33:59 Um, and I'm just gonna import that
in the code. This is actually the 34:03 last way of modifying things, so my
bad for tagging the wrong resource. 34:07 Um, it's actually using code directly. We know
that for certain use cases, we have customers that 34:12 really need to get very specific when it comes
to business logic or things that are going on. 34:16 And we allow… we allow you to do this
in the platform. So I've copy-pasted 34:21 this. There's just one thing that I need to check, 34:22 is that the naming of the components are
the same from that application to this one. 34:27 So, the filter customer name seems to be the same. 34:30 Same for licenses, and same for max licenses. 34:33 This is actually a pretty good tell that,
well, as I was talking about best practices, 34:38 it's actually using the same naming
conventions from application to application. 34:43 So this is super powerful when it
comes to me, if I want to maintain 34:46 multiple applications at the same time. It's
building in a way that's super consistent, 34:51 reusing my elements, reusing my
names. So I'll just save and run this. 34:55 Uh, hoping that it works. And we can
actually try the filters themselves. 35:00 Since I've added this, and this might
be a problem, I'm just gonna add this. 35:03 In case you need it, into the… Assist webinar
feature, I'll just add this at the bottom. 35:09 If you do… if you have the same output
as me, this will be useful to you. 35:13 The only thing that you need to be wary of is. 35:16 is the name of my components the same
one as on the page? And as I told you, 35:20 the filter customer name, you can see it. 35:22 If you hover the different elements on the page. 35:24 Now, I'm going to try the filter out. So I'm going
to re-go into navigation mode, because I think 35:28 it's the… It's the… it's the better one, and type
arrow. And boom! Here we have it. It's working. 35:36 So, um, this is… I think this is really good,
because it really shows how you can quickly 35:40 get things set up, and if you need to go into
more granularity, you can, so you don't end up 35:45 in that infinite loop of always prompting
without really knowing where you're going. 35:49 I'm also going to make sure that the
minimum to maximum licenses is also working, 35:53 so let's set this to 4 and this to 20. 35:57 And… I think that's… I need to… oh, you need
to click out of the 20 for it to actually 36:04 register. So here, as I can see, all of the
licenses seem to be between 4 and 20. So… 36:09 I'm… honestly, I'm super happy about
this. going forwards, there are a few 36:16 things that I would also want to do, and that
I wanted to show you. Now, the first one is… I 36:22 think that if I was a manager that
was doing customer license management, 36:25 I'd love to have a bit of a dashboard
aspect to this, to sort of see the 36:30 number of. the number of customers I have,
the number of licenses, what's going on. 36:34 So that's one thing that I'm going
to prompt it, to go a bit further, 36:37 and to really see how this works. So I'm
going to ask it. Can you add… actually, 36:41 I think I've put this in the instructions,
so I'll have… use the exact same one as you. 36:47 Can you add metric to this around
customers with a dashboard-like experience? 36:51 So I'm going to ask it to
do that in this instance. 36:54 On one end. So this is one thing that I would
want to do. So to add a bit more interaction, 36:58 a bit more… well, a bit more to this application. 37:00 And so I'm hoping that in this case,
it's going to get queries still based 37:04 on top of my Snowflake instance.
And on the other end, for example, 37:07 I would love to change the
theme of this application. 37:10 I don't know for you, I'm a huge fan of dark mode,
so I'm actually going to want to change the UI. 37:17 Now, since this thread is running, I'm going
to be running this in a parallel thread, 37:21 so in one, for example, in
this one, if it's completed. 37:24 Just to show you how this could interact,
and how we can interact with theming. 37:28 On this, so what I'm going to
do is, uh, change the theme. 37:33 And I'm gonna use, for example,
Netflix theme, to the Netflix team, 37:40 change the theme to the Netflix one, if… possible. 37:45 Sometimes it's good to be a bit
nice to your chat interface. 37:49 So, what am I doing here, essentially?
I'm asking it to change a lot of the UI, 37:53 a lot of the components when it
comes to theme, but as you can see, 37:56 I mentioned Netflix that I misspelled,
but luckily it's more intelligent than me. 38:00 And… very nice, so I think this
is… This is probably the red and 38:04 the black from Netflix that we all know and love. 38:07 And this is very interesting, because
what we've just realized is that, um. 38:12 Our chat interface is also aware of things
on the outside, and so it found the Netflix 38:16 theme. At no moment did I have to tell it, oh,
do you know what Netflix is, what's going on? 38:21 And this is actually very powerful, because it
can integrate much more than just the platform 38:27 itself, and answer questions. that are very
specific to different things on the platform. 38:31 By the way, it set the app theme directly, and
that's another thing that we have in terms of 38:36 governance, and in the same vein, making sure that
you build applications that are consistent across 38:41 everything that you're building. It's
setting something called the app theme, 38:45 and if you want to look at what the app theme is. 38:47 You can click on the app settings, which
is the last one on the left-hand side 38:51 panel. You can then go to the app theme
right here, and if you click on Edit. 38:57 you will see that all of the colors
that it's inputted right now. come 39:02 from our agent. And so, Agent,
which is a chat interface, um. 39:06 It's an agent behind the scene if you… if you 39:08 want to know more a bit about
how this works under the hood. 39:11 So this is very, very interesting, because
it means that also ASSIST can help us 39:16 create our application more globally, and
really configure this at a global level. 39:21 So we've done this with the theme. And that's
great. And it can also answer more questions. 39:26 Initially, in the first thing that we told
you, we also think that it's very important 39:29 for our customers to have vibe coding
tools that are useful in their cloud, 39:35 on their data, and so that's actually one
thing that I could ask this interface. 39:39 Do you know how I can host. a retool application. 39:46 This is a great question
to ask, in the sense that. 39:49 If you're trying to find information about Retool, 39:51 it's also an assistant that can help you
at any point while doing this. And so we 39:55 find this extremely powerful when
it comes to having also a sort of. 39:59 retool docs when it comes to this. And if I
look at the response that it's going to give me, 40:04 it's telling me, uh, the simplest
option is using Retool Cloud, 40:07 which is what we're all on today, but
you can also do self-hosted deployments. 40:11 And it's linking me links where if I open
them, it's going directly to our documentation. 40:16 So you also have an assistant that's aware of. 40:19 the ecosystem that it's in, and
that can find information from 40:23 the internet and other places and other sources. 40:25 So don't hesitate to test this out.
Very useful when you're building. 40:29 In the same vein, one thing that
we've realized many people… well, 40:34 it's a bit of a hurdle that
we all have at some point, is. 40:37 what happens when I arrive on the
application, I don't know what's going on, 40:41 I don't have any documentation, and
I want to know what's happening. 40:44 Well, since ASSIST is aware of the
structure of all of our application, 40:48 it's capable of telling you what's going on. 40:50 So what I'm going to do is ask it,
can you… explain this application. 40:55 To me, and I'm expecting it to
be able to tell me exactly what's 40:59 happening and what's going on. And what we see is. 41:02 When you have people that are coming
and leaving, that are vibe coding, 41:05 it's a great thing to have a way to
document your applications by default, 41:09 and to be able to have them be, well,
understood and explained to you. 41:13 So, don't hesitate to run these
prompts as you're going with me, 41:16 and you'll see what's going on
and how it can help us do that. 41:21 So, what it's telling me right now, 41:23 and I'll just… because I probably have
a query to validate on the other end. 41:27 Oh, actually, I don't, perfect. So
what… what this answer is filtering, 41:31 we're going to quickly look into what it does. 41:33 It's telling me you have… you've got a
customer license data with full CRUD, 41:37 create, read, update, delete. 41:39 It's giving me the different
fields, the different features, 41:42 everything that I need to understand
what's going on with the different queries. 41:46 So there you go in terms
of explaining applications. 41:49 Super powerful. And I'll just wrap this up
in terms of build-along. by going back to 41:55 our initial build and seeing the dashboard
metrics that we wanted to put into place. 41:59 What I can see right now is that
it's been able of creating this. Now, 42:02 it's put this below the UI just above. 42:05 We can see that we have the total number
of customers, the amount of licenses, 42:08 active licenses, and this seems to be
connected in real time to our… to our table. 42:13 As I can see, I've got 54 results here,
54 customers here. So what I'm going to 42:18 do is I'm just gonna edit and change
the number of licenses by one more. 42:21 And I'm expecting the total licenses and
active licenses to be updated with this. 42:26 So, just running that. And…
perfect! It's been updated by 1. 42:32 So this is exactly the strategy that
we want more and more people to do, 42:36 is use our Vibe coding tool on top of your data. 42:40 To secure them using the. at resources
that you've already configured, 42:45 their permissions. We mentioned also other
things that I haven't gone over, things like. 42:49 SSO, things like role-based access control, 42:52 things like having just-in-time integration when
it comes to adding new people to the platform. 42:57 And all of this is… culminates in a product, 43:01 and that you're going to be able to
vibe code and secure at the same time. 43:06 So, what I'm going to do is… quickly
go back to what we've seen today. So, 43:11 what to keep an eye out for building from now on? 43:14 There are 3 main things that I want you to keep
an eye out when you're building more. The first 43:17 one is you can at-mention resources, and you
can actually go further than that, as we saw, 43:21 because you can also mention queries,
elements on the canvas, whatever you want. 43:27 Also be aware that ASSIST has
full context over what's going on, 43:30 so it has knowledge around components,
queries. It can also do things like explain 43:35 what Snowflake is to you, or explain
what was in the Snowflake instance. 43:39 We could have… that's something that
we could have prompted to understand 43:41 what was in that database and what was going on. 43:43 So it's really a way for you to understand
everything that's going on when you're 43:47 building and make this much simpler and
accessible to a lot more builders. And 43:52 you can add guardrails on every single one
of your queries and more, like, themes. 43:56 The idea here is that. It will… well, first
of all, there's the human-in-the-loop part, 44:00 where you accept all of the queries,
that's what we saw when we were building. 44:03 We had to run the queries manually. And there's
also all the configuration that we do around this. 44:08 As I just mentioned, to make sure that you're
building enterprise-grade applications. So this 44:14 is the end of the build-along part. What I'm
going to do right now is go into the Q&A phase. 44:21 I don't know if there's anything
I need to address just before, 44:24 um, Amavir, if I have no answer in
10 seconds, I'll just move to Q&A. 44:35 Perfect, so I suppose this means that we're going
into this, so let me just… I'll just have a quick 44:41 scan through the questions, and I'll try and
answer as many as I can in the remaining time. 44:46 So, uh, will we have access after this webinar
to try this build later with the recording? Yes, 44:51 you will. We'll be posting this on our
YouTube channel, so you can find it there. 44:56 And I think there may be an email
that we send to everybody that 44:59 applied with the YouTube link. So, in any case,
you can find it. If you type Retool on YouTube, 45:04 and it may go directly into your mails. 45:07 The second question is, can you
define your own best practices to 45:10 apply to the agent? That's a great
question. So… you can do this. 45:15 Right now, um… I think you… so I don't
know where this comes from. If you're 45:19 using other tools like Cursor, for
example, you can actually write, 45:23 uh, markdown files directly, where you define
the best practices that the agent will apply. 45:29 This is something that we're
building in right now into 45:33 the agent itself. It's something that
we're looking at quite deeply. The best 45:37 practice is today that it's using
by default are the ones around. 45:41 Um, using, well, our pre-existing
resources, the naming conventions, 45:45 and a lot of things that we've put into
place into our system prompt. What you 45:49 can do in any case is you can, in the prompt
for every single application at the beginning. 45:54 tell it the best practices that we want to reuse, 45:56 but that is something that we would like to
govern at a more global level, and that's coming. 46:00 As I said, it's, it's, um… It's still
a beta… it's still a product in beta, 46:05 so we're really working on this to
try and make it as good as possible. 46:09 Before answering another question, actually,
I've just realized I've forgotten one thing. 46:13 In the building process, you have feedback
that you could put right here, uh, if you can, 46:18 I would be more than happy to… for you
to share the feedback with the team. 46:22 It's something that's super valuable
for us, and will allow us to, well. 46:26 understand more what you're
doing, what you're working, 46:28 how you're working, and how you
would like to see this evolve. 46:31 So, if you want to share feedback with
us, please do it through this. It's the 46:35 best way to get into touch with
our product and engineering team, 46:38 and we'd love to have more of your
feedback on the assist directly. 46:42 Going back to the Q&A, so… I'll just switch this
to the answered part. Will we have access to after 46:50 this webinar to try… sorry, I've already
answered that one, so I won't answer that one. 46:53 Can I apply agent to the workflow, and if I
can also make my Retool app public? If yes, 46:58 what of security? Okay, so… I… making sure
that I've interpreted the question right. 47:07 I think you're doing a reference
to our retool workflows product. 47:11 So, this is our automation,
our backend automation tool. 47:14 For those of you who aren't familiar
with this, I'll very quickly show, um. 47:18 what our workflows product looks like.
So I'll just create a new workflows. 47:23 If you want to find this, you click on the
logo, you can go to all the workflows tab. 47:27 Create new workflow. And essentially, it's
our backend automation tool, where you can 47:34 add different scripts, components, and link
to resources to everything that you're doing. 47:38 Right now, we don't have…
the agent doesn't work on, 47:42 uh, workflows. It's something that the
engineering is working on right now. 47:46 We want to make sure that everything that you're
building, be it the front-end application, 47:50 the workflows, or even the authentic part that
I haven't mentioned today. will be able to be 47:55 built using ASSIST, and ASSIST will know, as we
said before, everything that we've configured to. 48:01 for whichever product that we
have. So, for the time being, 48:04 it's not something that we can do, but
it's coming extremely soon in our roadmap. 48:09 The second question was, can
I make my app reader public? 48:13 So, yes, you can make it public, and there
are sort of different ways of doing this. 48:18 You can either embed the application into
another one, or just make it directly public. 48:23 What happens in terms of security? This will
depend on the configuration that you've set 48:27 up inside the tool. If you make it go through a
certain authentication flow, then you will have. 48:33 the same, um, groups and permissions as
you saw in that part, in that aspect. So 48:38 if you go towards that tab, and you define
that, the app is public or not public, 48:43 it doesn't change anything when it comes
to what is applied in terms of security, 48:47 so you can define that exactly the same way.
Is the AI agent capable of searching the web? 48:54 So… Right now, the AI agent is capable of
searching the web. But it is something that we 48:58 are limiting, in a sense, as we don't want this to
be used as if it was, like, a chat GPT or to-do. 49:06 many more things than Building Retool. So,
it will only… it will mainly find information 49:10 that's useful if it thinks that it's relevant
to building, editing applications inside Retool. 49:15 This is also a way to protect
ourselves from whatever could 49:18 happen if it was starting to search on
the web. So, there are some capabilities, 49:21 but we've limited them to make sure that it's
still relevant to what we're doing today. 49:27 Now, when it comes to our production SQL database. 49:30 How can I have… Rita know what the
tables and references between them are. 49:34 Currently, I have taught ChatGPT this manually, 49:37 explaining the database can
retool, scan, and learn my setup. 49:40 That's a great question, and the answer is
yes, and I think that's the main thing, um. 49:45 That's the main thing today, and the main
reason why people are coming to Retool to 49:49 vibe code, is that it will be able to
understand what joined queries are. 49:54 We… part of the… as a part of this AI Build Week, 49:57 we had one yesterday with Keanan on the US
side, who looked into that specifically. 50:03 It might be good for us to… I don't know if,
Daniel, you have the link to that, but I'm pretty 50:08 sure in that one, he goes into the, um. into a
production SQL database, into how join works. 50:14 It is true that here there was just
one table, but it understands this, 50:16 because when you scan the database, you can
also know what the joins are, what the different 50:21 foreign keys are that you've set up, and so it
is context-aware of how your database is set up. 50:27 And what will happen is. As you saw
when I was building the first spot, 50:30 was it scanning the schema? 50:32 In this case, there was only one
table that I had given access to, 50:35 because we didn't want to give it access
to our entire snowflake, but in your case, 50:38 it will scan the entire SQL database,
and that will work, that will work. 50:44 Can I use production data when vibe coding
with Retool? I think in terms of general 50:51 practice. I would never advise you to directly
use production data while you're vibe coding. 50:59 If you're modifying things, and. I
think the beauty of our own retool 51:03 is that you can actually reproduce your
SDLC pipeline, and so what I would do is. 51:09 As if you were doing more traditional
engineering. If you have a production 51:12 database and a replica of this
which is staging, for example, 51:15 I would set up that in staging, so
that when you're building applications, 51:19 you're not, for example, removing the
entire production database by error. 51:23 Um, these are more linked to how
we work as engineering in general, 51:27 more than being a specific problem to Vivecoding. 51:30 The goal, of course, is in production, you
can have it talk to your production database, 51:34 and that's exactly what we're aiming for.
When it comes to. building and vibecoding, 51:39 I would advise you, if you're trying to do
enterprise, to have a staging environment 51:43 that is very close to your production
environment, but with fake data on this, 51:46 so that you can do as you would in traditional
engineering, which is create all the features, 51:51 test it out with a lot of different data,
and this will actually allow you to go 51:54 faster with less fear when you're building of
interacting directly with your production data, 52:00 because otherwise you are doing that. So
when I was editing, for example, a customer, 52:04 it would have edited a customer
in your true production database. 52:09 The next one are, how are credits
allocated? If I ask a simple request 52:12 versus a more complex one, are the credits
assigned differently in those situations? 52:16 That's a great question, um, to be completely
fair, actually, I'm gonna have to skip that one, 52:20 because I'm not sure of how credit works
and allocation. I do know that for now, 52:25 you can use this for free until December. 52:27 That it will be a, um… it will
be a usage-based, um, allocation, 52:32 so there will be… there will be something
around the number of tokens, so of course, 52:36 more simple requests will have less allocation. 52:39 If I had to give you exact numbers, it's not
something that I could give you right now, 52:43 but it's a very good question.
If you ask this to me afterwards, 52:46 I can look it up with the product
team who's in head of pricing. 52:52 Is the assistant accessible via API? So,
that is one of the things that we want to 52:57 build out. I think that's… so that's still a
great question. Right now, it's not the case. 53:02 We actually had a hackathon internally last
week. It's one of the things that was, uh, 53:07 looked at, because we think it has a lot, a lot
of value, and we're definitely looking to do this. 53:12 So I've seen the premises of this
last week. We had a few engineers 53:15 try this out. I would expect this to
come at some point on the roadmap, 53:18 but today it isn't accessible. So, just
checking time, I still have a bit of time. 53:25 So the next question is, do
you have plans to implement 53:28 a feature that I can attach
a document or Figma design? 53:31 Great question. So, yes, I
haven't talked about the roadmap, 53:34 but there are quite a few
things that are coming up. 53:37 The first thing that you saw is that. Where,
right now, we did everything in a single page, 53:41 and what we're looking to do is extend
that to multiple-page applications. 53:45 You can already do this in traditional
retool, it's just that the feature 53:49 generation doesn't work when you have multiple
pages today, and that's coming very, very soon. 53:55 When it comes to inputs. We're looking
at attaching things like documents and 54:00 also voice notes if you want to add them, 54:03 so adding quite a few in videos too.
So this is something that's coming up. 54:06 very shortly, and you can expect that.
When it comes to Figma design, it's… one 54:12 of the top priorities that we have today, we're
seeing more and more clients come to us saying, 54:16 well, we just want to reproduce this Figma 54:17 directly, so it's something that
we're working on super actively. 54:22 Thank you for that question, that was a great one. 54:24 The next one is, can Retool Assist scan and
reference other apps I use within Retool? 54:30 That's a great question. Um, I haven't
tested this, so… This might be something 54:35 that I could test out live, and I'll just
see if it's capable of… I don't know. 54:39 Are you context-aware? of other applications. on 54:45 this instance. My gut feeling tells
me. tells me that it's not the case. 54:50 But I actually don't know, so that's a
great question. While this is turning, 54:53 I'll answer the next one and come back to this. 54:56 the Q&A doc is here. Can it read my OpenAPI
doc and learn how to reference it when needed? 55:02 Great question. 100% it can. So,
if I go back to the Resources tab, 55:08 so… for those of you who
want to see how you do that. 55:11 You go to the logo on the top
left into Resources. One of 55:15 the resources that we have is the OpenAPI spec. 55:25 It works extremely well when you're using,
let's say, create a new one, a new resource. 55:30 It works actually super well when using an
OpenAPI, as you can imagine, because of the 55:35 specification of the OpenAPI, it's very, very
good at knowing what's happening and what to use. 55:40 So, if I remember correctly, we were using
Stripe, and it's something that you can actually 55:43 see in action, where it's… It's going directly
into the OpenAPI configuration of the Stripe, 55:50 and it's capable of building an entire
application linked to monetization. 55:55 and a finance app built on top of Stripe. 55:57 Definitely something that you can do, 55:58 and what I would say is that today
it's optimized for using OpenAPI and. 56:04 any SQL kind, um, application using
CRAD. So let me just go back to the Q&A. 56:11 And… the last one that I want to
know, so is the… the question that 56:15 I haven't answered yet around scanning
of references, so let's look at this. 56:19 can read all Assist scan
references? Which one is it? 56:24 No, so as you can see right now, so my gut feeling
was right. It isn't context-aware, so it's only 56:29 context-aware of the current application and
not the other parts of your organization. 56:34 What's good, actually, is that it's
giving me more info on retool layers, 56:38 which also shows how good, actually, ASSIST is
at knowing the retool ecosystem and how it works. 56:43 It's really a great hand-in-hand editor to
be with. works super well on that end. So, 56:48 the answer to that one would be no. 56:52 Now, I think we're all done
for questions. Um, Amavir, 56:56 if there are any that I've missed that you…
that you see, please don't hesitate to tell me. 57:01 Other than that, I think we're good to go. So…
I don't think there are any more questions, 57:10 so thank you very much, everybody, for
coming to the… well, coming to this session. 57:15 Uh, we're super happy. This is actually the
last webinar that we're doing, part of our AI 57:19 Build Week. I hope you really appreciated
it. I've referenced a few talks before, 57:24 the ones with the Stripe API and the
one before using join tables on SQL. 57:29 Please don't hesitate to look at this.
If you, um… if there's another session 57:34 that we're going to run in one month
that's going to be done by Amavi himself. 57:38 Which is going to be around governance, security
across your applications, workflow, and agents. 57:43 Please don't hesitate to come to this. We're
also going to run a poll on this webinar itself. 57:48 Hoping that you really liked the session, 57:49 and that it got you more comfortable building
with read-to-wall and Vibe coding inside Retool. 57:55 So I'm very happy to have done
this, and thank you, everyone. 58:02 And Daniel, I'm gonna send it back to you, because
I think you're the one who takes over by now.