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 - Access the most powerful time series database as a service
  • Sonar - Write Clean Python Code. Always.
  • SaaSHub - Software Alternatives and Reviews
  • 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

  • InfluxDB

    Access the most powerful time series database as a service. Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.

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

  • Sonar

    Write Clean Python Code. Always.. Sonar helps you commit clean code every time. With over 225 unique rules to find Python bugs, code smells & vulnerabilities, Sonar finds the issues while you focus on the work.

  • 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