-
sqlsync
SQLSync is a collaborative offline-first wrapper around SQLite. It is designed to synchronize web application state between users, devices, and the edge.
No, there is a client part: https://github.com/orbitinghail/sqlsync/blob/main/GUIDE.md
> Step 2: Install and configure the React library
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
triplit
A full-stack, syncing database that runs on both server and client. Pluggable storage (indexeddb, sqlite, durable objects), syncs over websockets, and works with your favorite framework (React, Solid, Vue, Svelte).
I'm currently writing a very similar article about "full-stack databases" which highlights the same pattern where many apps end recreating the logic of our backend and database in the frontend client code. The solution we're promoting is to choose a database that can run on both the server and in the client and then sync between them.
The reason we aren't using Sqlite for our product is because Sql is frankly not the right tool for querying data for an application. It doesn't easily map to the data-structures you want in your client code and nearly all SQL databases have no way to subscribe to changes to a query without polling the query repeatedly.
So if you like the idea of having a complete database on your client but also want deep integration with Typescript/Javascript check out what we're building at https://github.com/aspen-cloud/triplit
-
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.
"Iโm building SQLSync because I want to make client-side applications easier to build without us having to reinvent the wheel each time."
Kinda ironic no?
Anyway, since the article is also about React, I can't recommend enough React Query [1] if you don't want to worry about caching data to reduce calls to the database and managing/refreshing stale data. It simplified so much my job.
[1] https://tanstack.com/query
-
inertia
Inertia.js lets you quickly build modern single-page React, Vue and Svelte apps using classic server-side routing and controllers.
But, if I can be honest, solutions such as Hotwire or Livewire are not as snappy as a SPA.
I personally prefer [InertiaJs](https://inertiajs.com), which is some kind of front-end router system with its state synced with the server in an "old style" fashion.
-
TypeORM
ORM for TypeScript and JavaScript. Supports MySQL, PostgreSQL, MariaDB, SQLite, MS SQL Server, Oracle, SAP Hana, WebSQL databases. Works in NodeJS, Browser, Ionic, Cordova and Electron platforms.
How does this compare to using directly an ORM lib that supports browser like TypeORM [0] via SQL.js [1]?
[0] https://typeorm.io/
-
I took a close look at htmx, and my impression is that the problems it addresses can be resolved with even fewer than its 4000 lines of JS [1], and without having to familiarize myself with its many opinionated approaches. The crux of the matter is to generate HTML on the server, as much as possible. I know how to achieve that without htmx.
The marketing materials for htmx are also a bit off-putting to me, and the authors seem to be enjoying fueling the flames of old and useless holy wars about what REST and hypermedia "actually" are, and how we all need to get back to basics, and remember to thank Ted Nelson before every meal, etc. Their online book spends something like 30 pages explaining what hypermedia is... [2]. I prefer not to sign up for a religion when I choose a JS framework (honestly, that's a big hard these days :-/).
--
1: https://github.com/bigskysoftware/htmx/blob/master/dist/htmx...
2: https://hypermedia.systems/hypermedia-reintroduction/
-
I don't know what program the author used, but I'd be surprised if he did them by hand. Excalidraw (https://excalidraw.com/) will give a very similar feel.
Related posts
-
How to create a newsletter signup form in just 20 minutes with shadcn/UI and Manifest
-
The main steps I follow when kicking off Node.js projects
-
Major updates from the open source community: Release Radar ยท June 2024
-
Rust GraphQL APIs for NodeJS Developers: Introduction
-
Marmot: Multi-writer distributed SQLite based on NATS