
Show HN: Beekeeper Studio – open-source, cross-platform SQL client - rathboma
https://www.beekeeperstudio.io
======
rathboma
Hey folks,

This is a passion project from myself and a friend.

Been looking for a slick and easy to use SQL client on Linux for a while (I
wanted basically Sequel Pro, on Linux, for PSQL). Couldn't find what I wanted,
so we made one ourselves.

It's built on Electron using Vue.js - I know HN opinions on electron apps, but
I've been surprised on how snappy the app is.

It's fully open source (MIT), cross-platform (Linux, Mac, and Windows), and
we're committed to respecting privacy. Hope someone else finds it useful too.

~~~
mappu
_> I wanted basically Sequel Pro, on Linux, for PSQL_

Have you seen [http://sequeljoe.ohwg.net/](http://sequeljoe.ohwg.net/) ?

I'm also following [https://github.com/ragnar-lodbrok/meow-
sql](https://github.com/ragnar-lodbrok/meow-sql) closely, a C++/Qt port of the
FOSS-but-Windows-only [https://www.heidisql.com/](https://www.heidisql.com/) .

But neither of these are really "fully baked" options.

EDIT: This may have come across as the typical HN "middlebrow dismissal" so I
just want to say, phenomenal work and a heartfelt thanks for being fully FOSS.
Tools like this are a really important part of the SWE landscape that could
use some more good entrants.

~~~
lykr0n
HeidiSQL works really well under Wine. I would still be using it

------
davedx
Looks nice and I've been looking for a client that works with SQL Server and
Postgres for a while now. Giving it a try for sure.

Feedback:

1) When I first setup a connection and save it, the modal stays there, should
probably be dismissed at that point

2) It wasn't clear how to connect, so I double clicked which worked. Maybe an
explicit 'connect' button next to each connection would be nice.

3) I really like how after connecting I'm straightaway in an ad hoc query
window (a frustration with dbBeaver). It would be awesome if the MacOS version
had TouchBar support at least for running (the currently selected) query -
Azure Data Studio has this and I use it all the time. (Probably windows should
use equivalent F-key here).

4) I think the default date formatting should more closely reflect the column
type - so a datetime column should display in an ISO format, not human
readable.

5) I like how Azure Data Studio displays nulls explicitly in the results
(italicised "NULL"). This lets you easily distinguish between an empty string
in your data and a null value.

6) I really like how it's just one click to expand a table to see its types,
but I miss the other table metadata here (foreign keys, indices, etc).

7) I like how it's dark mode by default. :)

Awesome job so far, will continue to use it. If it's interesting I would pay
for this product (though less than DataGrip which I consider overpriced).

~~~
rathboma
Wow, great feedback, thanks!

Yeah the data-formatting in the table is something I need to work on,
everything is just treated as a string right now, just so I could ship in a
reasonable amount of time. That will improve for sure.

Other information for tables will be my next big feature release I think.
Probably as a tab-view. Still not figured this out exactly yet.

Thanks for the monitization callout, although I'm committed to keeping all
core app features totally free forever. :-)

------
zenexer
Very cool! I’ve been looking for a decent cross-platform SQL client for a
while, so I can’t wait to try this out tomorrow.

In case anyone is curious, here’s what I’ve tried so far:

\- DataGrip: bulky, slow, bugs never get fixed, non-FOSS

\- Azure Data Studio: great interface, but no MySQL or SQLite support

\- phpMyAdmin: clumsy, lacking in features, requires a web server—I’m really
not the target demographic for this one

\- CLI clients plus a decent text editor: what I always end up falling back
to; daily driver at the moment

~~~
Lapland
TablePlus is my favorite one after trying most of those
[https://tableplus.com/](https://tableplus.com/)

~~~
heliodor
Once they publish the docs for how to build plugins, TablePlus is going to be
the obvious choice. I can't wait for my database browser to have charting!

~~~
Lapland
Did not know that was in the works, sounds awesome :)

~~~
heliodor
They have a few plugins available on GitHub so you can copy and adapt and
intuit some of the API but I did not see docs available a few weeks ago when I
looked.

------
arkits
This is pretty cool! Better SQL clients are always welcome.

I tried with Postgres 12 and ran into 2 issues -

\- jsonb columns don't seem to render properly... just get a "[object
Object]".

\- One specific table refused to get list anything, and there was a red
"Error" in the center of the listing UI.

~~~
rathboma
Good catches! Can you file a GitHub issue so I don't forget?

~~~
capableweb
Not that it's a big thing, but seems weird to put the responsibility about you
not forgetting something, on the person leaving the feedback, rather than just
filing the issue yourself.

~~~
mbesto
It seems weird that someone who has spent a lot of their own time (e.g. money)
to help a community is being shunned for not taking even more time out of
their day for a simple request.

This also disregards software ticket guidelines 101:

\- There isn't fully defined steps to reproduce

\- Limited details on what the user expected to see

\- No details about the users environment

People pour their souls into FOSS projects and regularly get cr*pped on for
not acting like Enterprise Support. So let's try to be a little more
empathetic to people who contribute freely to the dev community, even if its
just a small ask like this.

~~~
capableweb
Well, "shunned" might be a bit too strong, but I don't speak native English. I
certainly didn't mean to put down the author in any way, which is why I
prefixed it with "Not that it's a big thing", it's just a helpful note
regarding how to respond to feedback.

Let's cool it down with trying to start up some heated argument around this,
no one is interested in that.

~~~
mbesto
> Well, "shunned" might be a bit too strong, but I don't speak native English.

In native english the tone of the following sentence is considered "not very
nice":

> but seems weird to put the responsibility about you not forgetting something

Further...

> it's just a helpful note regarding how to respond to feedback.

And what you responded with is _NOT_ how to respond to feedback to an open
source maintainer.

> Let's cool it down with trying to start up some heated argument around this,
> no one is interested in that.

Nor am I. I'm sorry you feel like you're getting picked on here. This general
topic is a huge issue for the future of FOSS contributors. What you responded
with is clearly not egregious (e.g. i've seen people say things like "hey I
submitted a ticket on GitHub 3 months ago and no response, WTF!?!?"...that is
VERY BAD), but every little bit hurts. Don't take offense to it, especially if
english is not your native tongue.

------
jordanlewis
This is awesome. I love the simplicity.

I tested it out with CockroachDB to satisfy my curiosity and it works
perfectly, using the PostgreSQL driver. I think adding first-class support
would be as easy as making a new driver that's the same as PostgreSQL but with
a default port of 26257!

~~~
rathboma
Damn had no idea. Awesome to know. Can you file an issue so I remember to do
it?

------
sam_goody
For anyone chancing on this thread, here's my recap. Note that I have little
experience with these, so am trying to summarize, not give my own verdict.

Competition:

\- DataGrip (~$150/yr, Clunky, Powerful)

\- TablePlus ($50, Pretty, Useful)

\- DBeaver (Free version, Clunky, Powerful)

\- SQuirrel (Free, Clunky, Usable)

\- Heidi (Free, Clunky, Usable)

\- Postico ($40, Pretty, Mac + Postgres only)

\- [http://sequeljoe.ohwg.net](http://sequeljoe.ohwg.net) (Free, beta)

\- Azure (Free, Pretty, SQL server only)

\- Sequel Pro (Free, Pretty, Mac + Mysql only. IMO has issues with MySQL v8)

~~~
sam_goody
Correction, since it is after the edit window:

Datagrip is indeed cheaper for non Enterprise users, at 53/year from the 3rd
year, especially as they have a discount for users of competing software.

A few more, not mentioned in this thread:

\- Valentina Studio - [https://www.valentina-db.com/en/valentina-studio-
overview](https://www.valentina-db.com/en/valentina-studio-overview)
(Freemium, Pretty)

\- Workbench -
[https://www.mysql.com/products/workbench](https://www.mysql.com/products/workbench)
(Free, Pretty, Mysql)

\- DBForge -
[https://www.devart.com/dbforge/mysql/studio/editions.html](https://www.devart.com/dbforge/mysql/studio/editions.html)
(Freemium, Mysql Only)

\- Aqua Studio - [https://www.aquafold.com](https://www.aquafold.com) ($500,
Clunky)

\- Navicat Premium ($599, Pretty, has good reputation)

\- POPSql - [https://popsql.com](https://popsql.com) (12/Mo., Pretty)

I'm sure there are more!

------
mosselman
Looks cool. I haven't taken an in-depth look yet, but what I noticed is that
when I press CMD+W it closes the whole window, rather than the tab I am in.
This will land me in some trouble if I ever decide to use it as my main tool.

~~~
rathboma
Yes that is a problem. The app _should_ be capturing that event to close tabs,
but MacOS takes it over for some reason. I'll be doing keyboard shortcuts
differently soon, so that will be fixed.

Can you file an issue so I don't forget?

------
Daktest
I got pretty excited about trying this out, since I've been using a no longer
maintained (and pretty buggy) app called Sequel Pro.

But, Beekeeper kind of seems slow/clunky? I ran a simple query in our prod DB
that returned 906 rows x 60 columns – the app completely froze up and I
couldn't even scroll down to the next few rows...

~~~
skoskie
Switch to Sequel Pro nightly build. You can install it with homebrew. It’s
very stable despite the nightly moniker. I haven’t had a single issue with it
and it resolved several issues I was having with the regular release.

~~~
gempir
The nightlies have a lot of UI bugs, Filtering options disappear randomly, the
left column is kinda weird etc.

But still with all those UI bugs I prefer it over any other client.

~~~
skoskie
I have not encountered any of that. And ditto on still preferring it.

------
nkkollaw
Looks great. Sequel Pro you mentioned is by far the best on Mac, none of the
clients on Windows or Linux I tried even come close.

This is great, and badly needed IMHO—specially if one can use a single app for
both MySQL and SQL Server (Beaver DB is a usability nightmare).

The name will put off a lot of people. To be honest, if someone in a team said
"we should replace all our SQL clients with Beekeeper!" the first reaction
would be to laugh at the name—which is not good. "SQL Keeper", "SQL Vault",
"Sequalize", or anything like that would make people take the project more
seriously.

Congrats!

~~~
rathboma
Thanks! There's a history to the name, but I agree there are negatives.

The positive is that it is distinct and can hopefully provide its own
identity. Businesses use all sorts of software with silly names!

~~~
nkkollaw
Sure, they do use them, but as a startup I'd personally think it's better to
not making harder than it already is.

What's the story behind the name..? :-)

------
nickreese
Nice. Excited to try it out. Been using Postico for a while and having to hit
a keybind for auto complete suggestions has been a drag.

~~~
nickreese
Got a chance to play with it.

* Look into your JSON/JSONB column support. Right now it just returns [object Object].

* I dig the tab interface.

* I REALLY like the summary view when you expand the table on the left.

* Select auto complete wasn't working very well for me even with the table defined and ctrl+space was offering completely problemsome options.

Excited to keep playing with it. Going to test it as a daily driver.

~~~
rathboma
Thanks!

Yeah JSON / JSONB support coming soon (tm).

Auto-complete is a pet peeve. I'm using code-mirror for the editor and it has
limitations. Can you screenshot what was not auto-completing?

I find it helps if I first define a table, then the selects auto-complete
well:

select foo.<autocompleteworksgreat>

from foo

------
markdown
And here I am working on a Beekeeping app that I was going to call that. I
guess I'll call it SQL Studio instead.

~~~
agustif
Hive.app is taken too?

~~~
markdown
There's a domain squatter sitting on it demanding a minimum of $10k.

------
pratio
Kudos for the effort, however for SQL server it faces the same issues as most
other clients. connecting using an domain\user and password doesn't work which
means i can't jump ship.

Is there a reason it works flawlessly on datagrip and other tools like
sqlprostudio but apps like tableplus and beekepper can't?

~~~
rathboma
We'll get there with it. It requires some specific AD code to implement it. I
just haven't had time to do it yet.

These were compromises I needed in order to ship it (it already took us a year
to build).

------
CaveTech
Nice work!

I primarily use TablePlus, but it's lack of support for saved queries is a big
downside, this could be great for that use case.

A couple of UX things I've noticed, do with them what you will ;)

\- When clicking on a table, the more common expectation for me is for it to
open that table in a new tab, or switch to an open tab already using that
table. The dropdown with columns is nice, but feels secondary.

\- When opening a table, it would be nice to pre-seed with X amount of rows
immediately. Commonly I just want to filter or search through the data in some
way, and being able to immediately interact with it would be a nice touch.

~~~
Lapland
It has a "favorite" feature which I assume is similar to what you're looking
for? It's super intuitive imo but does the job

------
fabian2k
I couldn't find any way to change schema in Postgres, and it seems like it
only lists tables in the public schema by default. That does unfortunately
break it entirely if you use schemas at all.

~~~
rathboma
Yep. This was a compromise I made in order to launch (it took us a year to
build it part time even then). Coming soon I promise!

~~~
e12e
Does it respect the user schema search path?

------
danpalmer
Nice, congrats on the launch.

One thing I've been wanting for a while is a pluggable database client. I find
being able to "see" a database helps me understand structure and concepts
more.

With FoundationDB one of the things that I've really struggled with is
visualising the layers of the schema. I doubt there's a market for a
FoundationDB GUI client, but being able to write a plugin for an existing
client (I don't have good GUI skills) would be a great option.

------
JonoBB
Looks nice! Running on Ubuntu 18.04.

I see a lot of promise, but I've found 2 big issues right away:

1\. I can't see how to manually edit data in the tables

2\. The pagination (bottom right) doesn't work at all

~~~
rathboma
1\. We'll be working on this soon.

2\. This should work just fine -- what db are you using? Can you file an issue
with db information?

------
orsenthil
Very well done. Congratulations! I am fan of Sequel Pro on Mac, and never
found something like that for Linux. I use adminer on Linux and willing to try
your tool.

------
devm0de
Tried connecting to MySQL 5.6.10a RDS Aurora cluster with username/password
and SSL enabled, much as I'm able to do with other clients, but handshake
fails with `140230041270248:error:100000f0:SSL
routines:OPENSSL_internal:UNSUPPORTED_PROTOCOL:../../third_party/boringssl/src/ssl/handshake_client.cc:568`

Maybe boringssl is too new for my version of mysql supported tls protocol
versions?

~~~
rathboma
Can you file a ticket with these details and I'll add it to my bug squish
marathon!

------
rntksi
Really nice ! Love the commitments you make.

I use DataGrip and haven't found anything that was better than that at what it
does.

Yours is really neat. Saved queries are great.

~~~
rathboma
Data grip is great!

------
justusthane
I'm by no means a DBA, I just have to wear the hat sometimes.

That said, I'm always hesitant to connect to production databases with
relatively unproven products like this. How do I know there's not a bug that's
going to wipe out my database?

Is that a valid concern? I'm curious about other folks' take on this.

(Looks great though!)

------
learningerrday
This is amazing! And SSL option right off the bat too? Well done. Feature
request for Postgres: it looks like this version mostly displays tables in the
'public' schema. Would be great if it could display all tables and views in
all schemas present in the database

~~~
rathboma
100\. Yeah I had to draw the line and decide to ship. It's on the Todo list

------
hugofloss
This is cool! Bug: I run Postgres locally that works without a username and
password. Trying to connect to the database results in the error that I didn't
provide a username. Can you remove the validation?

~~~
rathboma
I think this is the driver I'm using, but I have it in line to fix for my next
release, thanks!

------
Grumbledour
A really small but still slightly annoying thing:

Your website states "Your download will begin automatically.", but it won't if
I have third party javascript blocked.

Please also provide a (if it doesn't click [here]) option.

------
sirwitti
Wow, thanks for creating and sharing your work! Up until now I haven't seen a
decent native SQL client on linux.

Since I'm working with vue I will totally check out the source and how you put
things togehter :)

------
morenoh149
Nice design. If you could diagram schemas like dbeaver I'd try it out!

~~~
rathboma
Coming soon :-)

------
srb24
great work! TBH Perhaps the best front end for editing tables I've ever used
was.... wait for it... Access 2010(!) as you could use it (via ADP) for
editing MS SQL Server databases - very quick/easy to edit table content, spell
check, easily import/export to tables using excel files, ctrl-f to search,
spell check etc. etc. everything I've used sincehas been a lot more powerful
but lacked the speed and ease of editing table content.

------
jzer0cool
What are some of the comparisons with MySqlWorkbench? It's the only one I have
stuck around using so far, so looking to shop around for a different client to
try.

~~~
matt2000
Side note, if you're exclusively on MySQL I would suggest checking out
[https://www.sequelpro.com/](https://www.sequelpro.com/) \- it served me well
for many years.

~~~
sam_goody
Ever since upgrading to Mysql v8 (which is the only supported version on
Ubuntu 20) I have had so many issues with SequelPro, that I bought TablePlus.

------
dr_faustus
Looks pretty neat. Have been using Navicat for quite some time but actually
never really warmed up to the UI. I'll definitely give it a shot.

------
sandGorgon
this is so close to vscode UI, that I wonder - how difficult would it be to
implement something like this on top of the vscode plugin system ?

------
sails
Looks like some nice, I'm a frequent Tableplus user, so nice to have a sleek
multiplatform alternative.

Quick Suggestions:

* Snowflake, Bigquery, Azure support

* A SQL linter (not easy!)

Thanks for sharing!

~~~
rathboma
\- Yes yes yes, coming soon I hope :-) \- For sure, on the radar, wanna help
make one? :-P

------
aetherspawn
Looks fantastic, really nice web design as well.

Makes me want to download it, even though I don't have an immediate need for
this kind of tool.

------
BitterAmethyst
Looks slick, does it support the SQLCipher variants of Sqlite?

~~~
rathboma
Never heard of those tbh. Want to make an issue so I don't forget and I can
look into it?

------
prisonality
Looking great !

Any plan for Query Plan diagram / visualisation ?

~~~
rathboma
Yep! On the todo list.

------
joelthelion
How does it compare to dbeaver ?

------
peteforde
I can't be the only person who was disappointed that this isn't Trello for
Beekeepers.

~~~
peteforde
I'm actually really interested in beekeeping, but thanks for the
encouragement.

------
goodSyntax
awesome job for a side project! looks very slick!

------
tistoon
Nice! Congrats!

------
hans_castorp
Only the obnoxious "dark theme" -> removed

~~~
DandyDev
It would be friendlier to phrase this as a suggestion:

> Looks promising! Have you thought about supporting a light theme as well? I
> generally don't like dark themes

~~~
rathboma
We have a light theme, but no settings menu :-). So that is coming soon

------
anshulc95
Amazing!

------
eb0la
Didn't expect to see a electron app for this. I don't know why, but I was
expecting something based in Java.

Just looked at the Github language stats for this project:

TSQL 98.5% JavaScript 0.6% PLpgSQL 0.4% Vue 0.3% CSS 0.2% HTML 0.0%

