Our great sponsors
-
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.
-
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.
-
Nest
A progressive Node.js framework for building efficient, scalable, and enterprise-grade server-side applications with TypeScript/JavaScript 🚀
PHP achieves a decent 40% in the composite score table though:
https://www.techempower.com/benchmarks/#section=data-r20&hw=...
I suppose you'd need to have Facebook-level scale for infrastructure to cost more than development in a "faster" language.
Cool jooq[1]-query-syntax-like ORM! https://deepkit.io/library/orm
It does not seem to have the code-generation (for the db table DTOs) though.
I also like typescript's "string & MinLength<3> & Email" type combining.
A quick edit-test-loop must be a great selling point of this kind of FW compared to FW in more strongly types languages (that have slower edit-test-loops due to compilation) that I usually prefer.
[1]: https://www.jooq.org/
We generate byte-code from the TypeScript AST, embed that into the emitted JavaScript, and execute them on-demand in a virtual machine during runtime. The result is a type-object which contains the computed type of a TypeScript type expression which can then be used for various use-cases. We use them for ORM, validation, serialisation, RPC, HTTP Router, etc. You can learn more on how it works here https://deepkit.io/blog/introducing-deepkit-framework and in very detail in the TypeScript Bytecode proposal: https://github.com/microsoft/TypeScript/issues/47658
I never understood the "single developer" argument. React itself does not even have more than 5 active developers (https://github.com/facebook/react/graphs/contributors), Vue literally have a single one (https://github.com/vuejs/vue/graphs/contributors). You can apply this to almost any library. I mean, what's that argument for?
I never understood the "single developer" argument. React itself does not even have more than 5 active developers (https://github.com/facebook/react/graphs/contributors), Vue literally have a single one (https://github.com/vuejs/vue/graphs/contributors). You can apply this to almost any library. I mean, what's that argument for?
I don't like ORMs that use runtime types either. Most of the time, I want to write raw SQL.
So as an experiment, I created a library that statically types raw SQL:
https://github.com/nikeee/sequelts
The idea is to parse the SQL queries using TS's type system. The parsed query is combined with the database schema and therefore, we know what type the query will return.
This is especially useful due to TS's structural type system.
author of ts-sql[0] here, this looks great (and a way more practical approach!)
[0] https://github.com/codemix/ts-sql
It does support serverless[1], as well as many other features you can expect from such a framework.
https://nestjs.com/
PgTyped is another high quality alternative: https://github.com/adelsz/pgtyped.
This was on HN a few weeks ago and may be of interest to you:
https://github.com/floodfx/liveviewjs
Here is another TypeScript library for validating types of SQL queries: https://github.com/MedFlyt/mfsqlchecker
It uses the actual PostgreSQL parser against your project's database schema to give 100% accurate results. Guarantees that all of your queries are valid, and that all input and output types are correct (and will also auto-generate/quickfix the output types for you in VSCode)