Ask HN: Hunting for a 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
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • create-t3-app

    The best way to start a full-stack, typesafe Next.js app

    You seem tailor made for T3 stack: https://github.com/t3-oss/create-t3-app

    > I know about Node.JS, Angular, React, Express

    Already know just JS. Stick was JS framework.

    > A central definition of data schemas. I don't want to define my schema or validation twice, once in the frontend and once in the backend.

    T3 stack uses Prisma, a JS/TS "ORM". Your data schema will live in a .prisma file.

    > Automatic generation of REST endpoints. I hate boilerplate code and don't want to reimplement Get/GetOne/Add/Update/Delete and Websocket for each data model. Even better would be a GraphQL interface.

    T3 includes tRPC. Give the automated tRPC endpoints a whirl.

    > Authorization and Authentication

    T3 includes NextAuth.js

  • anvil-runtime

    The runtime engine for hosting Anvil web apps

    pretty sure anvil is open-source now.

    https://anvil.works/

    open source.

    https://anvil.works/open-source

    i should be a paid for how much i recommend looking at them, but i've never used it for anything production.

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

  • low-code-backend-dockered

    Fully dockered starter kit for Elm with Hasura

    > 1. Hasura - DB + Basic APIS, 2. Ory.sh for Auth/Authz

    Great choices!

    3. React on the frontend

    Here I'd go with Elm, and a generated GraphL API client. Here an example to play with (which btw also includes ZomboDB for ElasticSearch integration into Postgres)

    https://github.com/cies/low-code-backend-dockered

    > 4. Windmill.dev

    Look awesome, never heard of it. Tnx

    > If you like code-focused solution: Rails, Laravel and Django are good options.

    I think Kotlin/KTor, while not as full featured, is a much better alternative due to the strong typing discipline.

  • Django

    The Web framework for perfectionists with deadlines.

    Vapor[0] based on Swift. Advantage of this is that you don't have to evaluate multiple frameworks for Swift and suffer paralysis by analysis. All the Swift community is behind one framework.

    The next is Actix[1] based on Rust. There are many frameworks in Rust and most of them have not reached 1.0 And which framework will survive becomes a question.

    Other not so well-known is Wt[2] based on C++. This actually is created for programmers who are not web developers. The development experience is similar to desktop app development like Qt.

    If that is not acceptable then Django[3], based on Python, is the one that will be good for you.

    For the front-end I would recommend Flutter[4]. As much as I dislike getting tied to a single company for whom the framework is not their bread-and-butter, I don't see any other viable options to Flutter that will cover all web, mobile and desktop out of the box.

    For databases, I would recommend BedrockDB[5], if you are not averse to SQLite. Or FoundationDB[6], if you want NoSQL. But if you are not concerned about horizontal scalability or okay with self-managing database availability, then PostgreSQL[7] is a very good option.

    For push notifications, PushPin[8] is a good option.

    [0] https://vapor.codes

    [1] https://actix.rs

    [2] https://webtoolkit.eu

    [3] https://www.djangoproject.com

    [4] https://flutter.dev

    [5] https://bedrockdb.com

    [6] https://www.foundationdb.org

    [7] https://postgresql.org

    [8] https://pushpin.org

  • Vapor

    💧 A server-side Swift HTTP web framework.

    Vapor[0] based on Swift. Advantage of this is that you don't have to evaluate multiple frameworks for Swift and suffer paralysis by analysis. All the Swift community is behind one framework.

    The next is Actix[1] based on Rust. There are many frameworks in Rust and most of them have not reached 1.0 And which framework will survive becomes a question.

    Other not so well-known is Wt[2] based on C++. This actually is created for programmers who are not web developers. The development experience is similar to desktop app development like Qt.

    If that is not acceptable then Django[3], based on Python, is the one that will be good for you.

    For the front-end I would recommend Flutter[4]. As much as I dislike getting tied to a single company for whom the framework is not their bread-and-butter, I don't see any other viable options to Flutter that will cover all web, mobile and desktop out of the box.

    For databases, I would recommend BedrockDB[5], if you are not averse to SQLite. Or FoundationDB[6], if you want NoSQL. But if you are not concerned about horizontal scalability or okay with self-managing database availability, then PostgreSQL[7] is a very good option.

    For push notifications, PushPin[8] is a good option.

    [0] https://vapor.codes

    [1] https://actix.rs

    [2] https://webtoolkit.eu

    [3] https://www.djangoproject.com

    [4] https://flutter.dev

    [5] https://bedrockdb.com

    [6] https://www.foundationdb.org

    [7] https://postgresql.org

    [8] https://pushpin.org

  • pushpin

    A proxy server for adding push to your API, used at the core of Fastly's Fanout service

    Vapor[0] based on Swift. Advantage of this is that you don't have to evaluate multiple frameworks for Swift and suffer paralysis by analysis. All the Swift community is behind one framework.

    The next is Actix[1] based on Rust. There are many frameworks in Rust and most of them have not reached 1.0 And which framework will survive becomes a question.

    Other not so well-known is Wt[2] based on C++. This actually is created for programmers who are not web developers. The development experience is similar to desktop app development like Qt.

    If that is not acceptable then Django[3], based on Python, is the one that will be good for you.

    For the front-end I would recommend Flutter[4]. As much as I dislike getting tied to a single company for whom the framework is not their bread-and-butter, I don't see any other viable options to Flutter that will cover all web, mobile and desktop out of the box.

    For databases, I would recommend BedrockDB[5], if you are not averse to SQLite. Or FoundationDB[6], if you want NoSQL. But if you are not concerned about horizontal scalability or okay with self-managing database availability, then PostgreSQL[7] is a very good option.

    For push notifications, PushPin[8] is a good option.

    [0] https://vapor.codes

    [1] https://actix.rs

    [2] https://webtoolkit.eu

    [3] https://www.djangoproject.com

    [4] https://flutter.dev

    [5] https://bedrockdb.com

    [6] https://www.foundationdb.org

    [7] https://postgresql.org

    [8] https://pushpin.org

  • Flutter

    Flutter makes it easy and fast to build beautiful apps for mobile and beyond

    Vapor[0] based on Swift. Advantage of this is that you don't have to evaluate multiple frameworks for Swift and suffer paralysis by analysis. All the Swift community is behind one framework.

    The next is Actix[1] based on Rust. There are many frameworks in Rust and most of them have not reached 1.0 And which framework will survive becomes a question.

    Other not so well-known is Wt[2] based on C++. This actually is created for programmers who are not web developers. The development experience is similar to desktop app development like Qt.

    If that is not acceptable then Django[3], based on Python, is the one that will be good for you.

    For the front-end I would recommend Flutter[4]. As much as I dislike getting tied to a single company for whom the framework is not their bread-and-butter, I don't see any other viable options to Flutter that will cover all web, mobile and desktop out of the box.

    For databases, I would recommend BedrockDB[5], if you are not averse to SQLite. Or FoundationDB[6], if you want NoSQL. But if you are not concerned about horizontal scalability or okay with self-managing database availability, then PostgreSQL[7] is a very good option.

    For push notifications, PushPin[8] is a good option.

    [0] https://vapor.codes

    [1] https://actix.rs

    [2] https://webtoolkit.eu

    [3] https://www.djangoproject.com

    [4] https://flutter.dev

    [5] https://bedrockdb.com

    [6] https://www.foundationdb.org

    [7] https://postgresql.org

    [8] https://pushpin.org

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

  • Bedrock

    Rock solid distributed database specializing in active/active automatic failover and WAN replication (by Expensify)

    Vapor[0] based on Swift. Advantage of this is that you don't have to evaluate multiple frameworks for Swift and suffer paralysis by analysis. All the Swift community is behind one framework.

    The next is Actix[1] based on Rust. There are many frameworks in Rust and most of them have not reached 1.0 And which framework will survive becomes a question.

    Other not so well-known is Wt[2] based on C++. This actually is created for programmers who are not web developers. The development experience is similar to desktop app development like Qt.

    If that is not acceptable then Django[3], based on Python, is the one that will be good for you.

    For the front-end I would recommend Flutter[4]. As much as I dislike getting tied to a single company for whom the framework is not their bread-and-butter, I don't see any other viable options to Flutter that will cover all web, mobile and desktop out of the box.

    For databases, I would recommend BedrockDB[5], if you are not averse to SQLite. Or FoundationDB[6], if you want NoSQL. But if you are not concerned about horizontal scalability or okay with self-managing database availability, then PostgreSQL[7] is a very good option.

    For push notifications, PushPin[8] is a good option.

    [0] https://vapor.codes

    [1] https://actix.rs

    [2] https://webtoolkit.eu

    [3] https://www.djangoproject.com

    [4] https://flutter.dev

    [5] https://bedrockdb.com

    [6] https://www.foundationdb.org

    [7] https://postgresql.org

    [8] https://pushpin.org

  • actix-web

    Actix Web is a powerful, pragmatic, and extremely fast web framework for Rust.

    Vapor[0] based on Swift. Advantage of this is that you don't have to evaluate multiple frameworks for Swift and suffer paralysis by analysis. All the Swift community is behind one framework.

    The next is Actix[1] based on Rust. There are many frameworks in Rust and most of them have not reached 1.0 And which framework will survive becomes a question.

    Other not so well-known is Wt[2] based on C++. This actually is created for programmers who are not web developers. The development experience is similar to desktop app development like Qt.

    If that is not acceptable then Django[3], based on Python, is the one that will be good for you.

    For the front-end I would recommend Flutter[4]. As much as I dislike getting tied to a single company for whom the framework is not their bread-and-butter, I don't see any other viable options to Flutter that will cover all web, mobile and desktop out of the box.

    For databases, I would recommend BedrockDB[5], if you are not averse to SQLite. Or FoundationDB[6], if you want NoSQL. But if you are not concerned about horizontal scalability or okay with self-managing database availability, then PostgreSQL[7] is a very good option.

    For push notifications, PushPin[8] is a good option.

    [0] https://vapor.codes

    [1] https://actix.rs

    [2] https://webtoolkit.eu

    [3] https://www.djangoproject.com

    [4] https://flutter.dev

    [5] https://bedrockdb.com

    [6] https://www.foundationdb.org

    [7] https://postgresql.org

    [8] https://pushpin.org

  • herbs-cli

    Herbs CLI

  • feathers

    The API and real-time application framework

    Feathers (https://feathersjs.com/) ticks a lot of your boxes.

  • rails7-on-docker-mysql

    Working Rails 7 demo application with mysql

    https://github.com/james-ransom/rails7-on-docker-mysql

    This is a demo of rails7 + mysql8+ Hotwire + docker. One line setup! Give me a GitHub star and I promise to return the favor by doing a review + star!

  • Devise

    Flexible authentication solution for Rails with Warden.

    Ruby on Rails https://rubyonrails.org/ seems to meet all of these requirements:

    - ActiveRecord is wonderful for data schemas: https://guides.rubyonrails.org/active_record_migrations.html

    - ActiveRecord form validations is excellent and defined only on the model

    - Scaffolds automatically generate create/read/update/delete endpoints: https://guides.rubyonrails.org/v3.2/getting_started.html#get...

    - Websocket-driven updates provided by Hotwire / Turbo Streams: https://turbo.hotwired.dev/handbook/introduction

    - Authorization and Authentication by Devise: https://github.com/heartcombo/devise

    HAML is wonderful as a templating language as well.

  • Ruby on Rails

    Ruby on Rails

    Ruby on Rails https://rubyonrails.org/ seems to meet all of these requirements:

    - ActiveRecord is wonderful for data schemas: https://guides.rubyonrails.org/active_record_migrations.html

    - ActiveRecord form validations is excellent and defined only on the model

    - Scaffolds automatically generate create/read/update/delete endpoints: https://guides.rubyonrails.org/v3.2/getting_started.html#get...

    - Websocket-driven updates provided by Hotwire / Turbo Streams: https://turbo.hotwired.dev/handbook/introduction

    - Authorization and Authentication by Devise: https://github.com/heartcombo/devise

    HAML is wonderful as a templating language as well.

  • TanStack Query

    🤖 Powerful asynchronous state management, server-state utilities and data fetching for the web. TS/JS, React Query, Solid Query, Svelte Query and Vue Query.

    - The whole "network layer" is completely and very efficiently handled by Trpc. It also uses React-query under the hood: https://github.com/TanStack/query.

    Infrastructure + deployments:

  • elide

    elide: verb. to omit (a sound or syllable) when speaking. to join together; to merge. (by elide-dev)

  • framework

    Mayu is a live updating server-side component-based VDOM rendering framework written in Ruby (by mayu-live)

    Check it out if you want, https://github.com/mayu-live/framework

    It's far from production ready, but it's already working reasonably well.

    I tried HotWire but it didn't feel right to me because I'm used to React.

  • Refine

    A React Framework for building internal tools, admin panels, dashboards & B2B apps with unmatched flexibility.

    https://github.com/refinedev/refine

    It is headless by default and supports Material UI, AntDesign, Chakra UI, and Mantine.

    It has connectors for 15+ backend services including REST API, GraphQL, NestJs CRUD, Airtable, Strapi, Strapi v4, Strapi GraphQL, Supabase, Hasura, Nhost, Appwrite, Firebase..

  • hx

    hx dev (by wekan)

    > I've often wanted a VB6 equivalent for the web, but open source.

    That's Gambas, it can create web apps.

    https://gambas.sourceforge.net

    Some more links here:

    https://github.com/wekan/hx/tree/main/prototypes/ui/gambas

  • gambas

    Website is still at sourceforge.

    Code has moved to GitLab https://gitlab.com/gambas/gambas

    Web based bugtracker is made with Gambas.

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

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