- Apr 19, 2025
How far can you go with Canva Code at launch?
- Daniele Catalanotto
- AI, Experiments
Published in the Backstage Blog
So it's now about a week that Canva code has launched, and I've been playing with it for a few tiny projects. Here's what I've learned so far.
It's great for tiny apps or widgets
A tiny app that gives me two city names
My son loves to learn two new city names every night before going to bed. He wants to know a new city name from the north (or above as he calls it) and one from the south. After years of putting him to bed with this routine, I haven't many other cities I still know.
So I made a tiny app that when I open it gives me two random city names, and their country. On in the northern hemisphere and one in the southern hemisphere.
There is no fancy API here, but as Canva Code is an AI, I asked it to give me 100 names of cities for each hemisphere and hard code them within the app. Which means I'm good for the next few months.
A minimalistic keyboard focused workshop timer
In about two hours, I created a custom countdown timer that's made for my nerdy brain. It just works with keyboard shortcuts. You enter a number, it sets the minutes for that number. You hit enter it starts or pauses it. You hit the up or down arrow while the timer is running and it adds or removes a minute.
When I'm doing such tiny prototypes it's always such a fun moment to realize how much making the thing changes the concept. You build it, see how it works, and then adjust the concept.
Why I like these mini apps
Making such tiny apps or widgets within Canva Code works really well. You can really create some fun tiny tools that are perfectly customized to your way of working and you can then publish them on a tiny website. Which means you can run the website from your computer or phone.
It fails for bigger apps with multiple screens after many versions
Before I share the more crazy experiments, let me be clear: I know that Canva Code is meant for tiny widgets and tiny interactive experiences. That's really what is showcased in the examples that Canva gives.
But I know from experience, that with just a bit of HTML, CSS, JS and local storage (the things that Canva Code uses) you can do some pretty advanced things.
So I tried it out. Knowing I might hit a wall at some point.
The big issue
The one big issue I have with Canva Code at the moment is that there is no way to revert back to a previous version, like you can do with Replit. This means that once the AI has coded a new version, you'll have to work with that version, even if it totally messed it up.
This seems to happen when you have already done a few versions within the same Canva Code conversation.
When it happens you're basically blocked as I couldn't find a way to prompt the AI to go back to a specific version that would make it do it.
Here two examples of how this messed up some prototypes I've played with:
Example 1: Not wanting to add a new feature
I had a pretty nice alpha version of a workshop planner app and I wanted to add a new feature where the presentation that the app creates based on the workshop schedule doesn't show in the same window but in another window.
I did a few tests of this behavior to see if it was actually possible to do this in a separate Canva Code conversation and it worked.
A prototype built in Canva Code to check if I can make it open a pop-up and then change the content of the pop from the main window. It worked!
So I thought: I can now bring this idea in my workshop planner.
How it was before. And the prompt I gave for the new update
Once I gave my instructions and Canva Code update the app it did two things:
It added default data to the app (which I didn't ask for)
It broke all the buttons and I couldn't work anymore with the app
The result of the prompt. A broken app with fake data in it.
Example 2: Changing the concept of the whole app
So without a way to revert back to the previous version that was working, I thought: let's try this fresh and see how far I can go.
It took me a bit of time but I finally got to make something that had most of the basic features I wanted.
A view of the home of the workshop planner
And the feature of turning the workshop plan into a presentation that lives in another window worked pretty nicely.
The workshop schedule with the presentation controls that control what happens in another window.
But then I decided to fix a little issue by turning the time format from AM/PM to 24h as I'm a Swiss guy who isn't used to work with AM/PM times.
That's when it went to shit:
A view of the home of the workshop planner after I asked Canva Code to fix the time format.
Now Canva Code created a full new thing with fake data, and totally different UI with a shit load of things I've never asked. Worst, were there are times shown, there are shown in AM/PM format. Which is pretty hilarious.
What's missing: reverting back to a previous version
So Canva Code can go pretty far! In fact I created tiny apps that are really strong like having a workshop presenter app that:
Let's you build your workshop schedule and easily drag and drop activities at their right place
Turn the workshop plan in a presentation
Have this presentation on a second window that you can put on a beamer
Update the workshop schedule while the presentation is happening
These are all pretty cool things to have in a custom tool that I build for myself.
The only thing really missing at this stage so that I can use these bigger tools I create is the possibility to revert back to a previous version when the AI messes things up.
With that Canva Code becomes a really strong tool to create your own tiny tools. Especially for people like me who already use Canva a lot in their work and already pay for a licence for it. Within the licence I already have I now have a mini version of a tool like Replit that cost 35 bucks a month.
How I plan to use Canva Code in the future
For now it's clear to me that Canva code can create small tiny apps that solve one tiny problem well. Like the city name tool or my timer. Each time similar tools exist, but here you can create tools that fit your own specific version of that problem. Plus you made them yourself, which is always a fun prototyping moment.
But I'll wait for a "revert" feature to continue working on more ambitious project like my workshop presenter and planner tool. I have lots of ideas for this tool, but we'll have to wait for that feature to be out.
Newsletter
Weekly Service Design Digest
Meet the creator
I worked with clients from all over the world to help them find innovative solutions to their problem. I've been blessed to be able to learn a lot.
Today I want to share these learnings back with the community. That's why I've built the Swiss Innovation Academy.