Skip to content

karifa/tutorial-modern-frontend-django-htmx

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tutorial: Django HTMX and friends

This tutorial was created by the Guild of Educators.

If you are interested in the art and science of teaching tech (especially Python) then you are welcome to join.

  • Pro educators with years of experience are welcome, come and share your skills!
  • New educators, occasional volunteer educators, people who might want to get into education one day, and the curious are also welcome

We are a community. We share skills and experiences. Our goal is to empower educators.

Donations welcome

If you find this useful, or would like to help us build the skills of educators, then we would very much appreciate it if you could make a donation to support our work. It's completely fine if you don't make a donation, but we would really appreciate it!

Find out more here

Cash donations are also very welcome!

Tell us who you are please

We want to get some stats about the impact we are having. It would be very helpful if you filled in this form.

We take privacy seriously and will not share your information with anyone or spam you.

Tutorial time!

Once upon a time, if you wanted to build a modern frontend web experience using a Python based web framework, an obvious choice was to expose a bunch of APIs and build your frontend in something else entirely (eg React).

Times have changed.

Tools like HTMX and AlpineJS have made HTML great again.

These tools make full stack web dev fast and fun, they simplify development, shrink code bases, and give backend devs the ability to do modern frontend work. In my personal experience I've seen the adoption of these tools lead to massive productivity gains for junior and senior devs alike.

This workshop will walk you through the process of building and testing a CRUD application with a rich and modern frontend.

As we build this out, you will implement a few patterns for handling some of web development’s most common frontend requirements. For example, hydration.

We'll be making use of:

  • Django
  • HTMX
  • a sprinkle of AlpineJS
  • a touch of of Tailwindcss
  • Playwright for testing

Even though this is a Django-based tutorial, we wont be covering any super advanced Django functionality. Our focus will be on the frontend, and testing the frontend.

If you would like to see what these tools are about, here are a few talks:

Directory structure

There are 3 directories to know about:

  1. tutorial
  2. demo
  3. presentation

1. Tutorial

This is where the magic is at. This is a series of markdown files that walk you through all the things. Start at the top.

2. Demo

This is the application that gets built up during the demo. You can poke around here to see the finished product of what we are doing.

3. Presentation

This repo was originally created as a tutorial to be run during the excellent PyConZA conference. The presentation in place introduces the topic, but also introduces the original tutorial presenter human (Sheena O'Connell).

If you are reusing this content, please feel free to consider the presentation a placeholder or example and adapt it as needed.

The presentation was created using reveal.js. Reveal.js is a presentation framework. It rocks and you can make really nice things quite quickly with it.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 308