Lona – A web framework for responsive web apps in full Python without JavaScript

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • hotwire-rails

    Discontinued Use Hotwire in your Ruby on Rails app

  • Flask-Meld

    Flask-Meld is a library to provide server rendered templates over websockets for Flask applications to build reactive components without Javascript

    It's great to have more and more of these projects, especially since frontend dev is such a huge time sink (if you're not doing it 100%).

    There are also some similar projects, for example flask-meld [1] for flask (also via websockets but falls back to polling if not available) and django-unicorn [2] (afaik only polling).

    [1] https://github.com/mikeabrahamsen/Flask-Meld

  • 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.

  • django-unicorn

    The magical reactive component framework for Django ✨

  • htmx

    </> htmx - high power tools for HTML

    This looks very nice, congratulations! I've been using HTMX [0], and I think having frameworks that let you have interactivity without having to write Javascript are very powerful.

    [0] https://htmx.org/

  • dash_devices

    A fork of plotly/dash to help Dash deal with devices.

    There is a fork / enhanced version of Dash that does use websockets: https://github.com/richlegrand/dash_devices

  • core

    A Kotlin web framework

    Kweb is in kotlin, not java, but it runs on the jvm https://github.com/kwebio/kweb-core/

  • streamlit

    Streamlit — A faster way to build and share data apps.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

  • remi

    Python REMote Interface library. Platform independent. In about 100 Kbytes, perfect for your diet.

    I'd like to point to the excellent REMI [1] library that provides similar capabilities to Lona. You can create web apps by only writing Python. They can also be executed as GUI programs. You can even choose REMI to be the output backend of PySimpleGUI [2].

    Not sure what the differences are, but good to know there are similar approaches :) Maybe every project can learn from each other. Thanks for sharing!

    [1] https://github.com/dddomodossola/remi

  • Apache Wicket

    Apache Wicket - Component-based Java web framework

    I think Apache Wicket takes a similar approach for Java? https://wicket.apache.org/

    I like the approach, and it's good to see more projects in this space.

  • purescript

    A strongly-typed language that compiles to JavaScript

    I get autocomplete and goto definition with dynamic languages just fine. And I make mistakes that static typing could have helped, but then again they are not frequent enough to justify the bureaucracy (and they don't break production).

    Of course, there is no general rule. This is true for the type of projects that I've been recently working on, which are small-scale distributed web systems.

    If a new project demands a rigorous type system, I would probably go to something like PureScript[0] before going to C# clones like TypeScript. It seems that the compiler would help me a lot more in a language like that.

    [0]https://www.purescript.org/

  • PyWebIO

    Write interactive web app in script way.

    Awesome work! I also developed a similar project called PyWebIO (https://github.com/pywebio/PyWebIO) last year. It provides less control to HTML element but provides a straightforward way to make input and output. Hope we can learn from each other's project.

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