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
  • Scout APM - Less time debugging, more time building
  • OPS - Build and Run Open Source Unikernels
  • SonarQube - Static code analysis for 29 languages.
  • hotwire-rails

    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

  • Scout APM

    Less time debugging, more time building. Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.

  • 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 lightweight Kotlin web framework for backend developers 🦆

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

  • streamlit

    Streamlit — The fastest way to build data apps in Python

  • OPS

    OPS - Build and Run Open Source Unikernels. Quickly and easily build and deploy open source unikernels in tens of seconds. Deploy in any language to any cloud.

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


  • 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