DjangoCon US 2023

Hotwire: A refreshing approach to the front-end that keeps Django the star.
2023-10-15 , Tutorial Track C

Escape from the dark, complex web of modern application development, and return to the green pastures where Django began - where web application development was simple, fast, and fun. Hotwire allows us to keep using Django's amazing toolkit and all the productivity benefits that come with it, while obtaining the results people expect from a modern website.

This tutorial will introduce you to Hotwire and radically change how you thought modern web development had to be.


If you are yearning for the days where a single developer could create a web application, or if you feel strained under the complexity of current web application architecture, this tutorial will illustrate how to breathe freely once again.

Hotwire takes a fresh approach to single page app development that allows the backend to remain the star; and that makes it a perfect fit for Django. Django templates are rendered in full, but instead of loading a new page in the browser, the different elements are swiftly replaced in the page. This provides the speed and feel of a single page application, while retaining the development efficiency and tool kit Django provides.

This tutorial will cover:
* How we got here
* Overview of Hotwire (Turbo and Stimulus)
* How to think about templates
* Common development patterns
* Forms
* Tabs
* Paginated & filtered tables
* Javascript sprinkles with Stimulus
* Pack it up. Compile and deploy your new code.

Stephen has been working with Django since the beta in 2006. Working out of the Philadelphia area, Stephen has varied experience in programming from sales companies, to healthcare tech, and is currently working at the media streaming site Volume.com. He is the creator and maintainer of django-mail-panel, Red: UI for Redis, and a contributor to many other Django-related open-source projects.

Outside work, he enjoys biking, jazz, and will wow you with a card trick if you give him the chance.