|
|
|
|
|
by radva42
2459 days ago
|
|
I think one of the reasons for this explosion in new productivity tools we are seeing is the remarkable progress the web platform has made in recent years. I know web developers complain about the rapid speed web technologies are moving, but I personally am amazed by what's possible today. True, it's hard to keep up with everything, but I can't wait to see what will come out of WebComponents and WebAssembly. Also putting all software in the browser doesn't necessary mean that the users have to give up control over their software and data. Maybe there's a middle ground by making it easy for the end users to run their own software in the browser. At least this is an idea I've been working on for quite some time - a self-hosted visual (no-code) software builder called FormBeaver[0] that let's users build and host their own custom database software without any code. Currently the users need to download it and run the App Builder on their own machine for it to work, but I'm hopeful that in the near future it would be possible to put it entirely in the browser thanks to WebAssembly. The one thing that's missing in the browser right now is an SQL database. I haven't found a way to run SQL in the browser. [0] https://www.formbeaver.com |
|
Actually, there's a way: https://en.wikipedia.org/wiki/Web_SQL_Database (see https://caniuse.com/#search=websql for browser support)
You can see a live example with SheetJS here: https://sheetjs.com/sexql/
Unfortunately, Web SQL Database has been deprecated in favour of IndexedDB, which in my opinion is no real replacement because it's a NoSQL database that's nowhere near as powerful in terms of the queries you can run with it.
However, the deprecation is understandable from a browser vendor's point of view. Maintaining and developing a browser is difficult enough as it is. Having to maintain an RDBMS adds a lot of complexity on top of that for what's probably a marginal use case for most users.
That said, it might be possible to integrate SQLite by using browser extensions. That of course depends on the users' willingness to install a browser extension in order to run your software builder.