A list of everything you need to create an app.

Developing an app is a lot like developing any other web-based software, so any knowledge you have of modern coding standards, tooling, and workflows will come in handy. There are, however, some specific requirements and we don't want to assume that everyone has the same experience.

This page provides a complete list of prerequisites for developing apps.

Apps are created, configured, and managed via Canva's Developer Portal. Anyone with a Canva account can access the Developer Portal and create apps.

TypeScript isn't a strict requirement — you can build apps with JavaScript or a language that compiles to JavaScript — but we use TypeScript in the starter kit, example apps, and documentation.

We recommend TypeScript because:

  • TypeScript eliminates the potential for many types of errors.
  • TypeScript makes it easier to create and maintain complex apps.
  • We use TypeScript at Canva and can properly support it.

React isn't a strict requirement. You can build apps with any UI framework — or no framework at all — but we use React in the starter kit, example apps, and documentation.

We recommend React because:

  • React is the most popular UI framework.
  • React is a proven technology for creating complex UIs.
  • We use React at Canva and can properly support it.

You need to be comfortable using the command line to install software, manage dependencies, and generate the app's JavaScript bundle.

You need a relatively modern web browser to use and develop on Canva.

Officially, Canva supports the following browsers:

  • Google Chrome, version 57 or higher
  • Mozilla Firefox, version 52 or higher
  • Safari, version 12 or higher
  • Microsoft Edge, version 89 or higher
  • Opera, version 44 or higher

Canva's engineers typically use the latest, stable version of Google Chrome, and we encourage third-party developers to do the same.

You need an application for running terminal commands. Your operating system's default application should be fine, such as Terminal on macOS or Command Prompt on Windows.

Some alternatives include:

You need an application to write the app's source code. You could use a lightweight text editor or a feature-rich IDE. At Canva, most engineers use WebStorm or Visual Studio Code.

Some alternatives include:

The starter kit depends on Node.js v18. If you're using a different version, it may still work, but we can't offer support if things break.

You need a package manager to install the app's dependencies. The starter kit uses npm, as it's already included with every installation of Node.js.

Some alternatives include:

You need a module bundler to bundle an app and its dependencies. The starter kit uses webpack as it's ubiquitous, well-documented, and used at Canva.

Some alternatives include:

You can use git to clone the starter kit from GitHub and pull the latest changes.