In the first part, you'll learn about each of the tools that we'll be using in this course -- HTMX, Tailwind CSS, and Alpine.js. You'll also set up a full-stack FastAPI project that leverages each of them.
Learning Objectives
- Describe what HTMX, Tailwind, and Alpine.js are and why you may want to use them with FastAPI
- Configure HTMX, Tailwind, and Alpine.js to work with FastAPI
In Part 2, each chapter will focus on a specific HTMX feature:
- Click-to-edit pattern
- Inline form validation
- Editing, removing, and adding a row in a table
- Active search and filtering
- Updating content outside the target
- Infinite scroll
Learning Objectives
- Effectively organize a FastAPI project when using HTMX
- Describe how HTMX attributes can be used to interact with the FastAPI backend
- Add click-to-edit, element swapping, and active search to a FastAPI application
- Explain and integrate various HTMX UX patterns
- Add infinite scroll to a FastAPI application
- Use Alpine.js in a FastAPI application
In Part 3, you'll switch out SQLIte for Postgres, test the front-end side of the app with Cypress, and deploy your app to Heroku with Docker.
Learning Objectives
- Write end-to-end tests with Cypress to confirm your code is working as expected
- Containerize FastAPI and Postgres inside a Docker container
- Deploy application to Heroku with Docker