You are currently viewing the new Anvil Editor Docs.
Switch to the Classic Editor Docs
You are currently viewing the Classic Editor Docs.
Switch to the new Anvil Editor Docs

Anvil How-to Guides

Anvil’s how-to guides show you how to accomplish specific tasks. These tasks are small use-cases that appear often in Anvil apps.

These how-to guides cover multiple topics. If you’re looking for guides relevant to one topic or component in Anvil, please refer to the relevant section of the reference docs.

The Guides

Customising your font

Learn how to customise your app using Google Fonts

CRUD best practice

An overview of Anvil's best practice for building CRUD apps

Custom Material Design 3 colour schemes

Create a custom colour scheme compatible with the Material Design 3 theme

Custom user authentication

Anvil's Users Service is simple but also flexible. In this tutorial, I'll show you how to use the Python APIs to take full control of the authentication system, or build something entirely custom.

Making plots

How to make plots in Anvil using most popular plotting libraries.

Dropdowns and Data Tables

Use DropDown components to select rows from data tables

Expand and collapse sections of pages

Create expandable/collapsable sections of pages

Visualise data from an external database

Build a dashboard that pulls data from a business database, and displays it on the web

Using a REST API

Use the GitHub REST API from an Anvil app, and solve a common configuration problem with the power of Git.

Embed a Webpage in an Anvil App

Embed a Website in an Anvil App using an iframe

Apps in development and production

It is common to want to run the same app in both development and production, connected to different Data Tables. We walk through the steps involved in setting up Development and Production versions of an Anvil app, with separate Data Tables and URLs.

Using Plotly Express in Anvil

Learn how to create plots on your server module with Plotly Express and display them on your client side.

Switching apps to client-side Python 3

You may have some apps that use Python 2 on the client side. Use this guide to convert them to use Python 3.

Upload a file directly to S3

Learn how to upload large files directly to Amazon s3 or a similar service.

Converting an app to use Packages

You may have some apps that pre-date the introduction of Packages. Use this guide to convert them to use Pacakges.

Port an app to new Layouts

Anvil has introduced Layouts, a major update to the Anvil UI system. Here's how to port an app over to the new Layouts system.

Set up an SSH key on Linux

If you want to `git clone` an Anvil app from the editor onto your machine, you'll need to prove who you are. The most robust way to authenticate Git access is to set up an SSH key.

How to deploy an Anvil app to an Amazon Lightsail server

In this guide, we will demonstrate how to deploy an Anvil app to an Amazon Web Service Lightsail instance.

How to deploy an Anvil app to Microsoft Azure

In this guide, we will demonstrate how to deploy an Anvil app to a Microsoft Azure virtual machine.

How to deploy an Anvil app to a DigitalOcean Droplet

In this guide, we will demonstrate how to deploy an Anvil app to a DigitalOcean Droplet.

How to deploy an Anvil app to Google Compute Engine

In this guide, we will demonstrate how to deploy an Anvil app to a Google Cloud Compute Engine.

How to deploy an Anvil app on Linode

In this guide, we will demonstrate how to deploy an Anvil app to Linode.


Do you still have questions?

Our Community Forum is full of helpful information and Anvil experts.