There’s a better way!
Introducing Anvil - the simplest way to build web apps with Python
Flask is a great way to build the server side of your web app, but to build powerful fullstack web apps, you’ll also need to know:
- HTML
- CSS
- JavaScript
- Web hosting
- SQL / ORM
With Anvil, you can:
- build your UI with drag-and-drop (no HTML or CSS)
- run Python in the browser (no JavaScript!)
- run Python on the server (full CPython server environment)
- deploy your apps with one click (no need to wrangle with Google Cloud, Digital Ocean, Heroku, Docker, or AWS)
- use the built-in PostgreSQL database, and query it from Python!
Build your UI with drag and drop
No HTML, CSS or JavaScript! (unless you want to use them!)

Run Python in the browser
Modify your UI components with Python running in the browser
When components raise events, they call Python functions in your client-side code.

Run Python on the server
Use simple Python function calls to pass information from the server to client
No need to set up routing or endpoints, just write your server-side Python functions and call them from your client side code.
Utilise all the power of Python with a full server-side CPython environment

Ready to try it out?
Anvil is free to use. (And yes, the runtime engine is open source!)
Two-click deployment
Choose public or private hosting at the click of a button.

Publishing an app and changing its URL
Open Source App Server
Deploy your apps on any computer.
Anvil gives you the control to deploy your apps anywhere – from a Raspberry Pi to a public server.
Take a look at Anvil’s Open Source App Server.

Built-in database
Anvil has a full database system built on top of PostgreSQL
Query or edit your data with a no-nonsense Python statement.

A database table backed by Postgres
Try it for yourself
Anvil is free to use – give it a try:
You can also read more about Anvil in the reference docs.
Here are some example apps to get you started:
Get Started with Anvil

Nothing but Python required!
A Full-Size Example App

How we built a Y Combinator startup in a day

Building a Web App with an External Database

Multi-User Applications with Anvil
