Introduction
Learn about Introduction
What We Are Building
In this course, we will build a fully functional contact manager application using Django as the backend framework and HTMX for dynamic frontend interactions. The finished application will allow users to search, create, edit, and delete contacts — all without writing a single line of custom JavaScript.
What is Django?
Django is a high-level Python web framework that encourages rapid development and clean, pragmatic design. It comes with an admin panel, an ORM for database interactions, a templating engine, form handling, authentication, and much more — all built in. Django follows the "batteries included" philosophy, meaning most things you need are already provided.
What is HTMX?
HTMX is a small JavaScript library that lets you access modern browser features like AJAX requests, CSS transitions, WebSockets, and server-sent events directly from HTML attributes. Instead of building a separate frontend with React or Vue, you simply add attributes like hx-get, hx-post, and hx-swap to your HTML elements. The server returns HTML fragments, and HTMX swaps them into the page seamlessly.
Why Django + HTMX?
- No need to learn a JavaScript framework — your frontend stays as Django templates
- Significantly less code than a traditional SPA approach
- Server-side rendering means better SEO and faster initial loads
- HTMX adds interactivity without the complexity of client-side state management
What You Will Need
- Python 3.10 or higher installed on your computer
- A code editor like VS Code with the Python extension
- Basic knowledge of Python and HTML
- A terminal application