LuaX: A Lua Dialect with JSX

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

    self contained software to build a minimalist dev environment.

  • I've built a lua-based markdown which is more sane (from a programmer's PoV) than markdown but still concise

    https://github.com/civboot/civlua/tree/main/cxt

    I'm planning on supporting syntax highlighting. I could imagine creating a cxx that does what LuaX is doing, except it would support rendering to the command line as well as html.

    Want to team up?

  • templ

    A language for writing HTML user interfaces in Go.

  • Cool project and if it works for you and you're happy, that's all what counts.

    When I read the article, I was thinking that Go templates were used wrong. I was thinking there must be a way to define the template so you inject the content and don't need to define the start and the end of the html, but instead yield a block of other html as some kind of argument. I was trying to look it up, but couldn't find documentation on this. Maybe the author is right and I'm wrong.

    And I was wondering why the author isn't using something like Templ [0], which is kind of JSX with Go as hosting language. Probably because it needs the preprocessor / compile step?

    [0] https://github.com/a-h/templ

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

    InfluxDB logo
  • bvisness.me

  • It is actually open-source already if you know where to look, but heads up that it’s not documented for public use (and as mentioned, I cut some corners on the parser). https://github.com/bvisness/bvisness.me/blob/main/bhp/transp...

  • xhp-js

    Easily create JS controllers for XHP elements, and XHP wrappers for React elements

  • They also made XHP-JS, though it seems inactive.

    https://engineering.fb.com/2015/07/09/open-source/announcing...

    https://github.com/hhvm/xhp-js

  • quickjspp

  • JSX is useful not just for advanced string interpolation but for representing/generation of tree alike structures / literals in PL. JSX is not only about HTML but XML too.

    I don't know how JSX is made in LuaX but in my QuickJS fork [1] JSX allows to generate as tree literals as procedure calls (JSX(tag,props,kids)) that can be used for various purposes - DOM population, VDOM generation, HTML/XML string composition, etc.

    And being embedded into a compiler JSX a) prevents common mistakes like non-closed tags and b) effective internalization ( translation happens at compile time once ).

    [1] JSX implementation for QuickJS : https://gitlab.com/c-smile/quickjspp/-/blob/master/quickjs-j...

  • pallene

    Pallene Compiler

  • It would have been nice if LuaX was written in Lua.

    Forking Pallene (https://github.com/pallene-lang/pallene) would introduce:

  • soupault

    Static website generator based on HTML element tree rewriting

  • I think this is a solid choice if you want both template engine and plugin system. I wish someday https://soupault.app adopt this.

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

    WorkOS logo
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