Let's learn how modern JavaScript frameworks work by building one

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

    🦄 A modern web client for SFTP, S3, FTP, WebDAV, Git, Minio, LDAP, CalDAV, CardDAV, Mysql, Backblaze, ...

  • Yes, I rewrote my react app onto vanilla JS using nothing else than rxjs, didn't have the time to document it all yet but it looks like this: https://github.com/mickael-kerjean/filestash/blob/master/pub...

  • capable-js

    Discontinued An effect system for building multi-stage UIs, powered by async generators.

  • If you mean effects as data, I can't think of anything off top other than elm which is a language + framework.

    I've made my own though: https://github.com/marcellerusu/capable-js.

    Its not for use but it was an interesting experience that enables a lot of new patterns by using generators.

    I don't claim that it is better than other frameworks though, there's a lot of times where this pattern is significantly more cumbersome than just using react.

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

    SurveyJS logo
  • pota

    pota is a small and pluggable Reactive Web Renderer. https://pota.quack.uy/

  • Recently, I wrote a web renderer/framework using solid-js reactivity to understand how a reactive renderer works. The docs website been written with it and mainly to test the library. https://pota.quack.uy/ . Source code https://github.com/potaorg/pota

  • materialite

    Differential Dataflow & Incremental View Maintenance for JavaScript

  • I've stopped paying close attention to the web framework scene in the past couple of years, as most of the interesting ideas on this topics are usually coming from different communities. But as I understand, the majority of popular web frameworks (React, Vue3, Angular) are still using tree diffing or hybrid "signals"+tree diffing strategies.

    In my opinion, one of the most interesting ideas to explore in this problem space is a hybrid solution: differential dataflow[1][2](model) + self-adjusting computations(view-model + view).

    1. https://github.com/vlcn-io/materialite

    2. https://timelydataflow.github.io/differential-dataflow/

  • apprun

    AppRun is a JavaScript library for developing high-performance and reliable web applications using the elm inspired architecture, events and components.

  • compradprog

    Composite Radial Progress Demo

  • I've been taking a similar, but somewhat different approach to upgrading some old Knockout projects to mostly Vanilla JS+RxJS.

    Here's one example app: https://github.com/WorldMaker/compradprog/blob/main/main.tsx

    One of the obvious differences is that I'm still using TSX, but it is very different from React, it just looks a lot like React at first glance.

    Also, because I was doing it across at least a couple of projects, I started it from the beginning as its own small framework and have been trying to document it: https://github.com/WorldMaker/butterfloat/tree/main

    It's still very much in early "prerelease" stages, but feedback is welcome.

  • butterfloat

    The greatest view engine for the modern web

  • I've been taking a similar, but somewhat different approach to upgrading some old Knockout projects to mostly Vanilla JS+RxJS.

    Here's one example app: https://github.com/WorldMaker/compradprog/blob/main/main.tsx

    One of the obvious differences is that I'm still using TSX, but it is very different from React, it just looks a lot like React at first glance.

    Also, because I was doing it across at least a couple of projects, I started it from the beginning as its own small framework and have been trying to document it: https://github.com/WorldMaker/butterfloat/tree/main

    It's still very much in early "prerelease" stages, but feedback is welcome.

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