Building an ATS with Anvil and Trello
Note: This guide includes screenshots of the Classic Editor. Since we created this guide, we've released the new Anvil Editor, which is more powerful and easier to use.
All the code in this guide will work, but the Anvil Editor will look a little different to the screenshots you see here!
Let’s say you’re a small to medium business and you’re recruiting but you’re getting too many applications. You could invest time and money into a new applicant tracking system (ATS) or you could use the tools your business already has to help you organise the hiring process. One of the best organisational tools out there is Trello, so how can we turn Trello into an applicant tracking system?
With Anvil of course! Anvil is the easy way to build full stack web apps with nothing but Python. We can use Anvil with Trello’s API to build a little automation which will turn a Trello board into a streamlined applicant tracking system.
What are we going to build?
In this tutorial we are going to build and deploy a web application that lets candidates apply for a job at your company and then lets your team track them through your hiring process with Trello.
Here’s a basic overview of how our finished ATS will handle each application:
What are we going to learn?
- How to create a web form
- How to create a Trello board
- How to handle sensitive information like API keys
- How to use Trello’s APIs including sending attachments and custom fields
- How to create an API endpoint with Anvil
- How to send emails from your Anvil app
- How to create a Trello webhook
Let’s get started.
Chapters
In this tutorial, you'll:Build your user interface
Creating a job application form using Anvil’s drag-and-drop editor.
Create your Trello board
Creating a Trello board to track job applications.
Using the Trello API
Creating a card on our Trello board using the Trello API.
Adding automated emails using a Trello webhook
Adding automated emails to our Anvil app to automatically email rejected applicants.
Optional: Challenge yourself
The best way to learn any new technology is to challenge your understanding. Why not challenge yourself to reinforce what you’ve learnt and learn more?
Clone the App
Click the following link to clone the finished app and explore it yourself, or read on as we take a step-by-step guide to building it yourself.
Try the finished app
For those of you who want to give the app a try before starting the tutorial. Why not submit an application to the finished app?
Here’s the Trello board your application will sent to.
New to Anvil?
If you’re new here, welcome! Anvil is a platform for building full-stack web apps with nothing but Python. No need to wrestle with JS, HTML, CSS, Python, SQL and all their frameworks – just build it all in Python.
Yes – Python that runs in the browser. Python that runs on the server. Python that builds your UI. A drag-and-drop UI editor. We even have a built-in Python database, in case you don’t have your own.
Why not have a play with the app builder? It’s free! Click here to get started:
Want to try another tutorial? Learn about databases in Anvil with our Feedback Form tutorial:
Data Dashboard
Build Database-Backed Apps
Build a Simple Feedback Form
Build a data-entry app, and learn the techniques fundamental to building any Anvil app. In this tutorial, you will:
- Write server-side Python
- Build your User Interface
- Write client-side Python
- Store data in a database
- Deploy your app