It's 29 Delphi, I mean

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

    A self-contained JavaScript wiki for the browser, Node.js, AWS Lambda etc.

  • > What does ownership mean here?

    It means owning the code and the data. With webapps, the code and data are hosted and owned, the users do not own the code, cannot run it independently. This is a clear dileneation between owner and user, and the owners can use that clear line to create artificial scarcity of various kinds. (The most popular being the subscription SaaS model). It's also easier to defend your IP since end users never see your binaries.

    I like to make my software single html files whenever possible. People can just save them and run them locally. Havent met anyone who cares yet though.

    I like that idea a lot, and I care. I think others care, but yes, it's a niche interest. Take a look at https://tiddlywiki.com/ for an example of a fairly successful project that uses the single html format running locally. However it suffers from limitations on File|Save which often requires a separate runtime of some kind to support.

    Another project that approaches this ideal is https://redbean.dev/, @jart's tiny, performant, featureful single-file webserver. In this case the "single file" is a server executable + zip whose state must be updated on the command-line, but I think hits a sweet spot in terms of practicality, and a global minima when it comes to minimizing dependencies. (Redbean bundles SQLite and Lua so it's also possible to do through-the-web state updates as in a traditional webapp.)

    My own project, Simpatico, aspires to be something along these lines. Eventually your browser tab is both a client and server process, connecting via websockets to other connected browsers, storing all state locally. I call this pattern "monomorphism", a play on the "isomorphic" javascript SPA. The server[2] is currently written in ~1 node file, but eventually I would like to port to redbean (and greenbean, the websocket version of redbean, but it isn't quite ready yet). The server grew several features to support a fast, practical BTD loop using markdown[1], and safe, performant execution on the public internet[2], but ultimately I'd like to pare it down to serving a single html file and allow the connected clients to provide all diversity of experience. I've used it to explore all kinds of browser apis, from crypto[3] to svg[4] to writing my own libraries (combine[4] and stree[5]). And it's all running locally, and easily hosted on a $5 VPS, and its all open source.

    1 - https://simpatico.io/lit.md

    2 - https://simpatico.io/reflector

    3 - https://simpatico.io/crypto

    4 - https://simpatico.io/combine

    5 - https://simpatico.io/stree

  • Sentry

    Developer-first error tracking and performance monitoring

  • Indeed, webapps are not immune to distribution problems. Wayward and invasive browser extensions are a clear threat, as are 3rd-party dependencies (and their dependencies) loaded at runtime. Which is why companies like https://sentry.io exist. I think the difference is that webapps are "distributable by default" and it takes real work to break this. Versus having local desktop apps which require work to distribute. A potent example of the power of defaults.

  • 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