Recommendations for combining the power of Django with the dynamic feeling of Javascript (SPAs)

This page summarizes the projects mentioned and recommended in the original post on /r/django

Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • turbo-django

    Discontinued Unmaintained // An early stage integration of Hotwire Turbo with Django

  • django-tailwind-alpine-htmx

    Simple Task app using Django, Tailwind CSS, Alpine.js and HTMX

    You can use Alpine.js + HTMX + Tailwind CSS https://github.com/AccordBox/django-tailwind-alpine-htmx

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

  • django-htmx

    Extensions for using Django with htmx.

    The Modern JavaScript guides are fantastic resources if you want a detailed guide to integrating JavaScript into Django: https://www.saaspegasus.com/guides/modern-javascript-for-django-developers/. I have a few other articles listed on https://www.django-unicorn.com/articles for other approaches. It does seem like Django developers have converged around HTMX for simpler interactivity. I've used https://github.com/adamchainz/django-htmx in the past which helps integrate Django and HTMX.

  • django-unicorn

    The magical reactive component framework for Django ✨

    For less complicated use-cases I've personally been working on https://www.django-unicorn.com/ which provides a UI component library for Django. It allows most of your UI logic to be written in Python without building an entire API, writing any custom JavaScript, or dealing with Channels/websockets. It won't ever replace the need for a complete SPA experience, but it would work fine for the use cases you mention above.

  • pusher-js

    Pusher Javascript library

    not an answer but i use pusher a lot : pusher.com

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts