VanJS (Vanilla JavaScript): smallest reactive UI framework

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

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

    🍦 VanJS: World's smallest reactive UI framework. Incredibly Powerful, Insanely Small - Everyone can build a useful UI app in an hour.

    This is really just a DSL to make dom:

    https://github.com/vanjs-org/van/blob/3f98060971a8ff141179ef...

    And a very simple system that replaces the dom from scratch each time any data changes:

    https://github.com/vanjs-org/van/blob/3f98060971a8ff141179ef...

    That's bad for performance (recomputing the style/layout and repainting even for minor changes), bad for accessibility, breaks focus, etc.

    It's unlikely the smaller bundle size compared to preact and friends wins anything once you've abandoned all reuse of the rendering engine computations.

  • vapor.js

    The World's Smallest & Fastest JavaScript Library

    The website for this is top-notch. It always turns me off when frameworks have bad websites, thankfully this amazing project doesn't.

    http://vaporjs.com/

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

  • hyperapp

    1kB-ish JavaScript framework for building hypertext applications

  • el

    Minimal JavaScript application framework / WebComponents base class

    Very cool! See also El, which is similarly sized, with an arguably more natural reactive interface: https://github.com/frameable/el

  • longwood

    Experimental rendering library

  • o

    Tiny and simple React clone

    Might be of interest as well https://github.com/zserge/o

    Would seem that it's not difficult to come by a framework tiny and functional. The question is, how long are they valuable to maintain and how tiny they keep if you cater for all the corner cases and fix bugs

  • nano

    🎯 SSR first, lightweight 1kB JSX library. (by nanojsx)

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

  • pakertaja

    JavaScript library for building HTML.

  • vanilla

    An OpenResty Lua MVC Web Framework (by idevz)

    Vanilla was already taken too:

    https://github.com/idevz/vanilla

  • nosx

  • vike

    🔨 Like Next.js / Nuxt but as do-one-thing-do-it-well Vite plugin.

    You are comparing apples to oranges. The author could probably couple their library with https://vite-plugin-ssr.com/ and have something comparable within a day.

    The reality is most running React apps today are still traditional SPAs, and chances are likely the same apps can be rewritten with VanJS (or any other SPA framework) and the users would not notice a difference.

  • imperative

    Structured UI Programming with ES6 Generators

    My library https://github.com/jhp/imperative is also under 2kB

  • mini-van

    Mini-Van: A minimalist template engine for DOM generation and manipulation, working for both client-side and server-side rendering (SSR)

    Interestingly the `tags` object seems to support any tag name: https://github.com/vanjs-org/mini-van/blob/57b686ced075754ee...

    And it still allows to provide specific types for teh known ones: https://github.com/vanjs-org/mini-van/blob/57b686ced075754ee...

    Cool stuff

  • tinyjs

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

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