Hacker News new | ask | show | jobs
by j1mmie 565 days ago
For years I've wondered why a general purpose, high quality, good UX, browser based DB browser has not existed. I've implemented 3 such (not general-purpose) browsers in my career. But I'd be really happy to stop doing that and use this instead.

I would love to see a Firestore driver implemented (maybe I'll take a crack at it some day), as I'm stuck in GCP land for the time being.

11 comments

> browser based

For whatever reason, this is the main limiting factor, local software can already be really good, for example:

• DBeaver - pretty nice and lightweight local tool for a plethora of databases https://dbeaver.io/

• DataGrip - commercial product, but you'll feel right at home if you use other JetBrains products https://www.jetbrains.com/datagrip/

• HeidiSQL - haven't really used this myself but the version graph on the page is cool https://www.heidisql.com/

• DbVisualizer - really cool tool that helps you explore messy schemas https://www.dbvis.com/

• Jailer - something for exploring datasets, a bit niche, but can be useful https://wisser.github.io/Jailer/

There's also some solutions that are specific to certain databases, like:

• pgAdmin - for PostgreSQL https://www.pgadmin.org/

• MySQL Workbench - for MySQL/MariaDB, sometimes a bit buggy but I really like the reverse engineering and forward engineering functionality https://www.mysql.com/products/workbench/

• Adminer - one of the somewhat rare web based solutions for the likes of MySQL/MariaDB, actually pleasant to use as long as you use it securely, this I think is a good example of web based DB tools https://www.adminer.org/

(out of respect for my own sanity, not mentioning SQL Developer, even though it sort of works)

QStudio. Editor and notebook in one, works on all os with 30+ databases and is Free: https://www.timestored.com/qstudio/ disclaimer: I'm the author
Looks interesting. Have you thought about providing it as a Homebrew Cask? Anyways, looking into it.
Looks great, how come I didn't know it? :)
I'm bad at marketing and poor at product decisions. For 10 years it only worked with one database. It took 30 lines of code to work on many more databases but I waited 10 years to do it. Don't make my mistake! I am trying to get better.
A nerd’s nerd. I am exactly the same, I think it’s because folks like a lot of the people that hang out around these comments are easily excited and self-motivated for the creative, engineering challenges involved, but struggle to produce the same kind of get up and go when it comes to the basic, fundamental packaging and presentation involved with marketing and/or sales.

As a graphic artist, I even get enthusiastic for a lot of the marketing, but as a freelance IT consultant, I tend to lose all motivation for selling my services the nanosecond I achieve sufficient income to get by, and revert to spending my time exploring and tinkering. We all have our own blind/weak spots.

I have often thought that some kind of service to pair creatives/engineers with professional development/managers would be really useful. I think that’s just called “LinkedIn”, but something more explicitly about entrepreneurial endeavors would be nice.

The chart feature looks amazing. I’d try making a landing page just around charts and see if it sticks.
Two more tools I really enjoy:

- https://www.beekeeperstudio.io/ - electron based and I find it really simple to use.

- https://github.com/k1LoW/tbls - generate markdown docs from databases (similar to DbVisualizer, but it's a static binary and you can just push the md files - see https://github.com/bbkane/envelope/tree/master/dbdoc for example)

Great list.

Azure Data Studio is pretty good and free to use. https://learn.microsoft.com/en-us/azure-data-studio

Supports of course most MS products but also: PostgreSQL MySQL MongoDB Apache Spark Apache Cassandra

https://www.bytebase.com/sql-editor/ with data access control, dynamic data masking.
There is also an old school browser based phpMyAdmin
Jailer is awesome and really not “niche”. Also, it's not something for exploring "datasets", but for tables and relational databases in an innovative way. I think it would be fantastic if more people knew about it. (https://wisser.github.io/Jailer/)
I think it's because there's no business model in the pure "DB browser" product. People don't seem willing to pay enough for it to build a good business around it.

Everyone I've seen either pivots to a Retool competitor or a BI tool.

Source: I've tried it twice.

For 12 years I got banks to pay for an editor I created. But yeah to grow the audience I made the database client free as others wouldn't pay. I have also created a separate BI tool so you're totally correct.
I think DB Browser is not a product but a feature. It is fairly challenging to monetize it. It can be an entry point for a developer's workflow, and then you can upsell something else.
small teams and individuals have failed to make enough money selling technical tooling products since forever; enthusiastic engineers keep building them. source: the 1990s
Because it does exist, but it's not free. Jetbrains Datagrip has been around for a decade and has connectors for most database archetypes (mongo, sql, redis, duckdb, etc).

Biggest limitation right now is its lack of support for vector style databases like Lance, qdrant, etc.

Datagrip is fantastic. You can also get the same functionality if you buy the IntelliJ IDEA Ultimate Edition, which includes many of the languages and tools that are also separately productized. I recommend this because the database tools integrate so well with the editor. For example, you can have a scratch file open that contains multiple SQL snippets. You can hit cmd-Enter when inside one snippet, and it will execute it and render the results either as a panel or inline inside the editor, notebook-style. Plus, full schema validation and autocompletion in the editor, and support for many, many databases including Postgres and ClickHouse.

Not only that, but the SQL support works for embedded strings in programs written in other languages such as Go. So it knows that some statement conn.Exec("SELECT ...") is SQL and syntax-highlights it, performs schema validation and autocompletion inside the string literal. Not only that, but you can open the string literal as a separate editor and edit it, including doing things like "reformat", which was an unexpected delight when I discovered it.

It's this kind of "feature stacking", which features working organically with each other, that makes Jetbrains IDEs so damn good.

But the basic database tools are also superb. Its table view is really fast. It has syntax highlighting (e.g. if a column value is JSON), live editing (including the ability to open a column value as an editor, in which case you get all the usual syntax tools), and even graph rendering with support for multiple data series and grouping in a single graph.

There is also excellent support for exporting data. You can mark a bunch of result rows and copy them as CSV or as SQL INSERT statements, or you can save the entire result to a file. This is how I often export data from BigQuery, as it's much more convenient than Google's own tooling (the web UI is particularly bad, requiring that you export the query result to a GCS bucket first).

These database UIs aren't technically difficult to do. But somehow nobody else seems capable. The closest I can think of is Microsoft's tooling around SQL Server, which is pretty slick, albeit MSSQL-specific. I often wonder how Jetbrains, which is a pretty small company, can be so effective and produce such an incredibly feature-rich product portfolio.

> Browser based
Still a valid counterargument. A good browser based DB GUI might just not exist because the existing desktop ones are so good already.

I personally also vouch for DataGrip, a fantastic tool. No browser based tool is going to come close to the experience of an actual desktop app imo

> No browser based tool is going to come close to the experience of an actual desktop app imo

Why?

Sandbox constraints. Windowing. Browser compatibility issues. Plugins and Integration compatibility.
Another +1 for Datagrip!
Missed that - I am a little unclear how being wrapped in electron as an app is necessarily an advantage - I guess it could be valuable if it were pulled out electron, and you could host it as a service.
You can connect to your SQLite databases from the browser too without the Electron app if you wanted: https://studio.outerbase.com/connect
Yeah you can definitely do that, I referenced how we do it in another comment. The electron app and running it locally allows you to use TCP protocol which isn't available directly in the browser.

It's mostly just a nicely bundled way to run it if you aren't very technical but still want a easy to use database client.

You can also run commands like this to connect to your database if you want:

npx @outerbase/studio \ --port=5000 \ --user=admin --pass=123 \ mysql://root:123@localhost:3306/chinook

DbGate might fit your needs: https://dbgate.org/

It even has a demo: https://demo.dbgate.org/

I remember I used TablePlus, which was what you described. Very pleasant program. Not browser based, though.
I used to love table plus. My favorite part was that you could hook a query up to a chart. Then you could have the query fetch fresh data every second to give you a live dashboard.

At the last company I worked for I made a command to ssh into our servers and extract job data. I saved the data in a local SQLite database. Then I made a dashboard in table plus to show the it in a chart that would refresh every second.

I had a real-time dashboard in about an hour once I figured out all the job info I wanted to capture. It was really cool!

Yeah, my last company paid for a subscription to this. Enjoyed using it. Don’t think there’s a massive market, but definitely lots of devs who want easy DB access and would pay $5/month.
The average true cost to acquire a single customer is in the hundreds of dollars, to pay for sales & marketing labor, advertising etc. So $5/month is nearly equivalent to "free" from a business perspective.

https://firstpagesage.com/marketing/average-cac-for-saas-bus...

Why not closer to dozens of dollars like for ecommerce, so about annual revenue per customer?
Databases are B2B products, not consumer products. They are commercially useful only when placed in the context of some larger business process (e.g. tracking customers/orders/goods/users/batches/events/patients/filings etc.).
We're talking about database viewers/editors, not databases in general. But also databases are used plenty in consumer products, e.g., some sqlite file that stores your app's config

And these are consumers:

> definitely lots of devs who want easy DB access and would pay

Thank you, I hope you can stop building those and use us instead as well :)

I've never used Firestore directly, but I did see Firebase's recent announcement about Data Connect. It seems like it could act as a bridge to bring your data into Outerbase. Do you think that would work?

dbeaver? it has dbeaver community edition, and supports tons of database.
DBeaver's UI/UX is.. functional.
I can’t immediately say what I dislike about the dbeaver UI, but I fully agree with your statement.
dbeaver is my preference as well.
It's quite nice and really lightweight but it's also very basic. So basic you can't even click on the table name in the side panel to see a preview of the data. I use it every day but yearn for a few more features.
Seriously... not only a browser but also something akin to access. It's crazy to me that it's 2024 and no/low code tools online are all still worse than MS access.
It seems odd that there is nothing like Access (or the other couple if similar DB tools that were around in the heyday of Access and before), but I think it is because the demand is relatively small. I've seen several projects start in that direction then pivot elsewhere or just die an unsupported death.

I think the problem is that demand/interest is not sufficient to keep a self-hosted project going, nor monetisable enough for a hosted one. People wanting to self-host end up going with something more specific, possibly self-made, for their needs, rather than a generic solution, and a hosted solution has a couple of significant costs to cover:

1. Resource use when people load a large amount of data then run under-optimised queries on it (or impossible to optimise, if they've chosen a bad structure for what they want out of the data). This can be mitigated by throttling individual users' IO/memory/CPU use but then the product gets a reputation for being slow.

2. The support that many people will expect (especially if they are paying, but even if they are not) which could consume a lot of time. A project that is very lucky might end up with a community that takes on a good amount of this load, but you can't bank on being that lucky.

3. Resource to keep available all the hardly used, or even never used, projects that will sit around if the service is free. Mitigating this with cold storage will help, but as with throttling active use this will make the service appear slow generally (people will remember the tens-of-seconds startup time more than they will notice subsequent actions being more than fast enough).

Getting people to pay will be an uphill struggle, and money from advertising is unlikely to cover the above, especially with many people like me blocking commercial stalking which also blocks a lot of advertising.

> It seems odd that there is nothing like Access

There are many commercial services and tools. Like Notion and Airtable and all their clones. For more advanced users and usecases there are those like Metabase, Retool and all their clones. But they are more focused on specific domains. And today it's quite easy to just barf up some CRUD-interface with webstack, especially now that AI is good enough for simple stuff.

How about LibreOffice Base?
SequelPro for me!
Isn't it unmaintained? Have you tried SequelAce?
PouchDB and CouchDB already exist