TalkPython - HTMX + Flask: Modern Python Web Apps, Hold the JavaScript

TalkPython - HTMX + Flask: Modern Python Web Apps, Hold the JavaScript

Register & Get access to index

P1v0xVo.jpg
Course Summary​

htmx is one of the hottest properties 🔥 in web development today, and for good reason. This framework, along with the libraries and techniques introduced in this course, will have you writing the best Python web apps you've ever written: clean, fast, and interactive without all that frontend overhead.

If you are a Python web developer that has wanted to build more dynamic, interactive apps, but just don't want to (or can't) write a significant portion of your app in a rich frontend JavaScript framework, you'll absolutely love htmx. This library lets you write Python code you love and still add that clientside interactive aspect.

What's this course about and how is it different?​

htmx is a very compelling technology. It's one of the first legitimate libraries that delivers on the promise of dynamic, interactive web applications without complex JavaScript. htmx allows us to write server-side code in any language (Python in our case) and, through a few simple HTML attributes, bring our pages to life.
This is the only course (that we're aware of) that shows you the full lifecycle of building Python and Flask-based applications centered around htmx. Unlike basic tutorials where you'll find only just quick coverage of a simple feature, we take a full-fledged web app and extend it by adding three real-world features all building upon htmx.
Moreover, we show you the right way to use htmx with Flask and Python. The resulting code is incredibly clean and would impress almost any professional web developer.

What will we build​

In the course, we will add a bunch of htmx-powered features to an existing application. This app, called Video Collector, is a beautiful Flask web app that allows us to save, explore, search, and play videos we've collected from YouTube.
htmx-video-collector-home-shadow-1600.png

The Video Collector application we'll build during this course.

What topics are covered​

In this course, you will:
  • See how htmx differs from common JavaScript front-end frameworks such as Vue and React.
  • Understand the server-side exchange enabled by htmx attributes (e.g. hx-trigger).
  • Add click to edit to an existing data-driven Flask application.
  • Learn about the jinja-partials package to refactor our jinja2 templates (with or without htmx).
  • Add deep linking to our dynamic web application, allowing us to share links into interactive segments.
  • Add active search to an existing data-driven Flask application.
  • Implement browser history for htmx actions (allowing back and forth navigation).
  • Add infinite scroll to our app.
  • Distinguish between full page requests and partial htmx requests within a single view method in Flask.
  • And lots more
View the full course outline.

Who is this course for?​

This course is for anyone who creates Python web applications and needs them to be more interactive in manners often characterized as SPAs (single page applications) but doesn't want to (re)write the application largely in a complex JavaScript frontend framework such as Vue.js or React.js.
The experience level for taking this course is not significantly high. You'll need
  • A basic understanding of how Flask works
  • Experience with core Python concepts (such as classes, functions, and decorators) but nothing complex (such as async or metaclasses)
  • You'll need to know a little about HTML and HTTP
That's it.
Author
TUTProfessor
Downloads
64
Views
410
First release
Last update
Rating
0.00 star(s) 0 ratings

More resources from TUTProfessor