13 ms·
Postage – A fast replacement for pgAdmin
- patrickbolle 9y agoThanks for this, PGAdmin is painfully slow and clunky for me. Will give this a shot tomorrow morning!
- bdcravens 9y agoScreenshots on https://www.workflowproducts.com/postage.html https://www.workflowproducts.com/postage.html should be clickable thumbnails for larger preview. Otherwise those are too small to see much detail
- justintocci 9y agoI've posted an issue for it. Thank you. https://github.com/workflowproducts/postage/issues/334 https://github.com/workflowproducts/postage/issues/334
- ak39 9y agoThanks for this. That object dependency graph is a killer feature. Well done Justin!
- Posibyte 9y agoIs there a reason this was linked to the issues page rather than the repo root? By the way, this looks really nice. It's an electron app, but it references having "a small fast C core library in the style of Node.js and NGINX." Can you go into more detail about the architecture of this and how it's related to Node and NGINX?
- jdub 9y ago"event-based" (i.e. asynchronous)
- justintocci 9y agoSome info here: https://github.com/workflowproducts/postage/blob/master/Facts_About_Electron_Performance.md https://github.com/workflowproducts/postage/blob/master/Fact... Postage is based on 'envelope' and works the same but the envelope repo has more info about architecture: https://github.com/workflowproducts/envelope https://github.com/workflowproducts/envelope
- wongarsu 9y agoI haven't tried it yet, but I would love to be able to point to a good example of an electron app. They really seem to have thought about this and considered where to focus performance.
- opmac 9y agoHow is this any better than any other database admin tool?
- justintocci 9y agoThe chief goal was to make Postage faster than anything else. We've largely succeeded.
- opmac 9y agoThat's a bold claim. Do you have any data to back that up? Benchmarks? Comparisons? What about resource usage? There's not much information on neither your github page nor your website itself. Just trying to find a reason why I should use this tool over my existing PostgreSQL admin tools.
- justintocci 9y agohttps://github.com/workflowproducts/postage/blob/master/Facts_About_Electron_Performance.md https://github.com/workflowproducts/postage/blob/master/Fact... But my favorite features are autocomplete, the ace editor functions like non-contiguous find/replace and the beautify button.
- opmac 9y agoThat doesn't show much besides that you're basically on par with the latest version of pgAdmin. What about real benchmarks here. "Faster than everything else." In what ways? Faster queries, analysis, what? All I see in that doc is slightly faster start up times than pgAdmin. Also why are you instantly downvoting my comments? I'm genuinely interested here, not criticizing your work.
- justintocci 9y agoI'm upvoting everybody, i don't even have downvote privledges. As I said, our goal was to be faster than anything else, i meant for your average development tasks. We spent most of our effort on optimizing query results but if you see something slow just file an issue and we'll look into it. You have to realize, at the time we wrote it, i think seven years ago now, it was blindingly fast compared to pgadmin3, and Pga4 is still broken on large result sets. Many other tools use odbc or have architectural issues that slow them down.
- skrebbel 9y agoPretty off topic, but this appears to be made by a family that's also a software company. Or the other way around. Awesome team page: https://www.workflowproducts.com/about.html https://www.workflowproducts.com/about.html
- justintocci 9y agoThat's us!
- skrebbel 9y agoReally cool. Can you tell us more about how that happened? How does an entire family somehow end up consisting of IT people and decide to start a software company together? :-) What's dinner conversation like? Do you have an office or does everybody live and work in the same house and never leave except for groceries and bowling?
- justintocci 9y agoI have nine children, homeschool them and they start programming around twelve depending on interest. I got fired because a new president wanted to hire his old it guy so my wife started a company. That was ten years ago. Lunch and dinner involve a lot of shop talk because when people get stuck it helps to discuss. We all have different strengths so we get requests for a 'consult' when we take a break too. We work in the livving room so phone calls can sometimes be funny. Kids being kids and getting shushed. We have all local clients at the moment and we find visiting them helps to stir up work so we get out a bit.
- cookiecaper 9y ago>I have nine children, homeschool them and they start programming around twelve depending on interest. That is awesome! Have you written more about your experience somewhere online? I would love to strive for something similar when my kids are a little older (my oldest is currently 7) and I personally know several others who have similar hopes. Just seeing a real implementation of this oft-discussed prospect is very exciting! It's difficult to express the admiration I have for this. Raising a large family is no small undertaking, to say nothing of mentoring a guild of devs. Major heartfelt congratulations to you, your wife, and your family of code wizards.
- rosser 9y agoThis looks great! You sold me with the object dependency graph alone. As someone who's fed himself as a PostgreSQL DBA for over a decade now, I'm excited to see what this can do for me. Thank you!
- justintocci 9y agoWe feel the same! The lack of progress with the official client was what drove us to do it.
- taneem 9y agoDoes this support JSONB column types? I was using Jetbrains Datagrip, which I've been very happy with except for the fact that it doesn't seem to support JSONB columns. I've switched back to PgAdmin 4, but the UI lag is really distracting.
- justintocci 9y agoIf it doesn't do what you want just file an issue. We'll fix it. What do you mean by support?
- SolarNet 9y agoNot the OP, but I would suspect that the problem is displaying JSONB as if it were plain text json without having to deal with manually converting it or relying on DB operations.
- pw 9y agoIf you're on Mac, another great, albeit not free, Postgres admin app is Postico (https://eggerapps.at/postico/ https://eggerapps.at/postico/).
- justintocci 9y agoFunny experience. we tried to get into postgres.app not realizing they are they same company as Postico. Rather than point out that they weren't interested they just blasted us. Didn't find out till weeks later. Had a good laugh. Postico doesnt have autocomplete so i haven't tried it but i'm sure it's a fine product.
- jakobegger 9y agoI'm sorry if my response in January came across as harsh. I really do welcome competition in the PostgreSQL client space -- that's why we have the web page with all the Mac PostgreSQL clients [1] in the first place. I didn't want to add Postage to that list because it didn't work with Postgres.app when I tried it [2]. If Postage now works properly with Postgres.app, feel free to open a new issue and I'll try it again. [1]: https://postgresapp.com/documentation/gui-tools.html https://postgresapp.com/documentation/gui-tools.html [2]: https://github.com/PostgresApp/PostgresApp/issues/365 https://github.com/PostgresApp/PostgresApp/issues/365
- _e 9y agoI have seen events like this occur with totally different projects on github because issues feels like a message board. A different way of handling it would be to open an issue in the Postage repo, put a link to the Postage issue in the PostgresApp issue and then close the PostgresApp issue. I like how the Toccis were very proactive and communicating how they were working to resolve the issues but Jakob was right about how Github emails everyone with each comment. I'm glad it was resolved here on HN.
- jafingi 9y agoI use the freeware app PSequel. It's so great!
- temp 9y ago>electron Not a big fan of it so I think I'll continue using PSequel and pgAdmin3. With Slack already running, I can't have another battery hog running simultaneously.
- justintocci 9y agoUnderstood. If you're open minded, you may want to read this: https://github.com/workflowproducts/postage/blob/master/Facts_About_Electron_Performance.md https://github.com/workflowproducts/postage/blob/master/Fact... Also, postage has a webserver mode that is simple to install (configure-make-install) and it does not use Electron. You just use a browser window.
- wongarsu 9y ago>You just use a browser window I don't think anyone who has a problem with Electron is going to rejoice at the option of a browser window instead. Typical Electron usage is problematic because it is a browser. But Postage sounds like it might be the rare Electron app that is actually sensible.
- mixedCase 9y ago>I don't think anyone who has a problem with Electron is going to rejoice at the option of a browser window instead. I'm not going to jump around in happiness but I sure as hell prefer it as it's more resource efficient.
- beojan 9y ago> Typical Electron usage is problematic because it is a browser. Electron is a new copy of the browser for every application.
- jafingi 9y agoPGAdmin 4 is one of the worst software releases I have ever experienced. Version 3 worked fine, but everything was destroyed with 4. So many things not working, UI bugs, and you have to click multiple times to get to the same point as you could in one click in 3.
- quink 9y agoI especially like the bit where HTML in a row actually gets parsed by PGAdmin 4. Apparently it does strip dangerous content, after some playing around with it, but holy hell, why would it be a good idea to even have this functionality? I've given up on PGAdmin 4 for the next year at least.
- justintocci 9y agoHave you tried to get to the bottom of a large result set yet? Rediculous. I feel your pain. Postgres is the equal of so many enterprise databases but pgadmin not so much. If we could just get Postage named PGAdmin5 we'd really be in a good spot.
- scrollaway 9y agoWhat a clusterfuck of a disaster pgadmin4 is. This is what happens when you decide to dismiss technology (electron) without understanding what the issues with it actually are. It's using Qt, but QtWebEngine rather than QtWidgets or QtQuick. Qt is a great pick, iff you're building a native desktop app rather than a web app. It's so depressing. I packaged it up for Arch Linux recently without realizing how bad the whole thing was. I'll probably be taking it out of the repos soon seeing as it doesn't even start anymore...
- skrause 9y agoFortunately pgAdmin3 is not going anywhere for now because BigSQL maintains an LTS release that stays compatible with the most recent Postgres versions: https://www.openscg.com/bigsql/pgadmin3/ https://www.openscg.com/bigsql/pgadmin3/ So I simply continue to use pgAdmin3 until something better comes along because I also really didn't like pgAdmin4.
- 9y ago
- spacetexas 9y agoLooks great! This is another option I've been using which I can suggest. https://github.com/web-pal/DBGlass https://github.com/web-pal/DBGlass Also based on Electron
- scrollaway 9y agoI've been using sqlectron (which is also based on electron), because that's the only one I could get working with Redshift (a Postgres 8.0 fork): https://github.com/sqlectron/sqlectron-gui/ https://github.com/sqlectron/sqlectron-gui/ Edit: I think I'll be sticking with sqlectron for now. Postage looks pretty featureful but very quirky. Good work on it though, good to have more free alternatives to Datagrip/pgadmin3 on Linux.
- kkoppenhaver 9y agoOn a related note, a former co-worker built a similar tool. It's been helpful for me! https://sosedoff.github.io/pgweb/ https://sosedoff.github.io/pgweb/
- sandGorgon 9y agoSerious suggestion - do this : http://sidekiq.org/products/pro http://sidekiq.org/products/pro Remember, it is very hard to donate...But very, very, very easy to pay for invoices. This is one of the coolest postgres apps, that actually works on Linux as well. I would love to see this supported.
- justintocci 9y agoThe main reason we haven't done this is because we had hoped to get Postage renamed PGAdmin5. Unfortunately, that outcome seems ever more unlikely. There seems to be some political reason why the PGA4 team continues to get official support while in ongoing trainwreck mode for a year now.
- sorkin2 9y agoWhat kind of official support?
- deleted 9y ago[deleted]
- deleted 9y ago[deleted]
- anarazel 9y agoAs somebody spending a lot of time working on PostgreSQL I'd like to know the same.
- anarazel 9y agojustintocci left another comment, which he has since deleted, but since I've spent some time investing in an answer, I'm posting it here. Justin, if you dislike being quoted, let me know. > In fact, it really should have had these tools a decade ago. What does "should" mean here? That it'd have been good? Sure. That people working (as a hobby, or as part of their employment) on PG should have stopped doing what they were, and instead focus on doing tooling? Maybe, but given the very very limited number of people and their skills I doubt it'd have been a good trade. > So I propose a better question. Why doesn't PostgreSQL have free, enterprise-grade tools? I think there's plenty of reasons, and everyone will weigh them differently: For one, the development community is actually surprisingly small, especially a couple years back; only in the last few years that's changed to some degree. Which means we're often struggling to get the crucially needed server features done, not to speak of delving into a bunch of features outside of our expertise. Another big reason, and that might sound counterintuitive, is PostgreSQL's license. Because of it and the long community support cycles, companies around PG have a hard time making money w/ licensing etc. So they have to focus on support, training and value-adds. A number companies tried / try to make money selling software around postgres, more enterprise-y tooling among that. Often that doesn't turn out to work that well, because it's actually a lot of work, and without input from the larger community they don't get the necessary market penetration. Thirdly, I think that PG's development is done by a number of different companies, with each company's share of development not being large enough to sustain the project, explains some of this. I think it's overall an advantage, but in some areas like coordinated planning, marketing and coordinated effort it has its downsides too. If you want to make value-add software around core you're not going to do so with a competitor. Lastly, I think for a long time Pgadmin3 was seen as not being good, but kinda somewhat acceptable. But its implementation wasn't particularly clean, in a language relatively few GUI folks use (C++), using a dying and buggy GUI framework (wxwidgets). I think it was for a long time just good enough that MVP of something better wasn't all that minimal anymore.
- hendzen 9y agoYou guys are offering free phone support? For a FOSS product. That is pretty cool. Also I would really recommend putting some of the screenshots on the Github readme page. See bottom - https://www.workflowproducts.com/postage.html https://www.workflowproducts.com/postage.html
- justintocci 9y agoYou're right. I've opened an issue for it: https://github.com/workflowproducts/postage/issues/337 https://github.com/workflowproducts/postage/issues/337 It's time we spent a little time promoting Postage.
- drew___ 9y agoAny plans for Linux support? I'm desperate for a postgresql admin suite that runs on Linux and in particular copes well with HiDPI displays.
- JelteF 9y agoDid you even check the downloads page? Theres rpm and dep packages: https://github.com/workflowproducts/postage/releases https://github.com/workflowproducts/postage/releases
- makkesk8 9y agoLooks great! Decided to install it and test it only to be met with a blank screen, the dev console contains no errors as well. Anyone else having this issue? (windows 10, latest release)
- watsocd 9y agoI got the same. Just a blank screen. When I clicked on the menu selections to edit the configuration files, it just opened another empty window. Windows 10 latest.
- justintocci 9y agoI'm trying but I can't reproduce the error. Microsoft Windows 10 Pro Version 10.0.14393 Build 14393(latest) uninstalled Postage removed the following folders: C:\Users\jtocci\.postage C:\Users\jtocci\AppData\Roaming\Postage C:\Program Files (x86)\Workflow Products Downloaded Postage.Windows.3.2.16.zip tried to install by double-click. nothing happened. (known Electron issue) right click to run as administrator install for all users, default location Postage popped right up. Any ideas how I can get the error you're getting?
- watsocd 9y agoI did not install on C:. I installed on D: I uninstalled and reinstalled as Administrator C: and it works now.
- justintocci 9y agoExcellent! I opened an issue: https://github.com/workflowproducts/postage/issues/339 https://github.com/workflowproducts/postage/issues/339 We'll see if we can reproduce. Should be easy now.
- unlimit 9y agoGreat work, I will surely check this out. At this moment I use pgAdmin 4.1 and I don't really like it. There is a typo in the Description field of your https://www.workflowproducts.com/about.html https://www.workflowproducts.com/about.html page. Desktop is written as destop.
- justintocci 9y agoFixed! Thank you!
- acmecorps 9y agoMy personal favorite - Valentina Studio. Available in windows, mac and linux. Can work with MySQL, PostgreSQL, SQLite. https://www.valentina-db.com/en/valentina-studio-overview https://www.valentina-db.com/en/valentina-studio-overview
- eswat 9y agoThanks for the suggestion. While the OP is awesome over pgadmin I had been looking for a good polyglot DB tool for a while.
- acmecorps 9y agoYes, and best of all - it's free! *with more paid advance features, but hey, if you need those, it's worth it.
- brightball 9y agoI've been pretty happy with DBeaver in that regard.
- _e 9y agoCheck out Navicat Premium from their website [1]: Navicat Premium is a database development tool that allows you to simultaneously connect to MySQL, MariaDB, SQL Server, Oracle, PostgreSQL, and SQLite databases from a single application. Compatible with cloud databases like Amazon RDS, Amazon Aurora, Amazon Redshift, SQL Azure, Oracle Cloud and Google Cloud. You can quickly and easily build, manage and maintain your databases. [1] https://www.navicat.com/en/products/navicat-premium https://www.navicat.com/en/products/navicat-premium
- acmecorps 9y agoYeah, navicat is great! It's just for a small time developer / student, the $1,299.00 price tag is not really enticing. I'll gladly pay for a subscription model like adobe cc.
- 9y ago
- alexpetralia 9y agoStill highly recommend DBeaver for working with Postgres. My own post on the topic: http://alexpetralia.com/posts/2016/6/8/you-should-be-using-dbeaver http://alexpetralia.com/posts/2016/6/8/you-should-be-using-d...
- carbocation 9y agoI started using it a few weeks ago since I didn't like any of the solutions on Linux, and I came here to say that I've been delighted with DBeaver.
- dizzystar 9y agoI recall JDBC clients have a problem with magic dollar-quotes ($$), which creates massive issues, especially when working with procedures and JSON. I ran into that issue when I tried Squirrel, does DBeaver run into this issue?
- pivo 9y agoThank you, this is great!
- scient 9y agoA link to Github issues and a GH page with zero screenshots. Thats not how to promote your OS project :(
- justintocci 9y agoYou're right. Perhaps it's time to promote Postage. I've opened an issue for it here if you have any ideas: https://github.com/workflowproducts/postage/issues/337 https://github.com/workflowproducts/postage/issues/337
- yellowapple 9y ago"Compiling Postage from source will only give you the server version and all first time users should try the desktop version first." Sorry what? How does one go about "compiling" the desktop version, then? Or the installers that are supposedly great? Something really reeks of red flags over here.
- icebraining 9y agoSeems like you just need to run the package-nix.sh or package-windows.bat scripts, which compile and package it as an electron app.
- justintocci 9y agoThis is correct, thank you icebraining. We stand by the README wording because we've gotten a lot of feedback from users who are not developers. There are additional README documents for developers.
- executive 9y agoAny PostGIS support?
- justintocci 9y agoWe're actually working on mapping right now for a potential product so it might be possible to add something cool to Postage but I don't know what it would look like. Anything in particular you'd like to see?
- JosephRedfern 9y agoNot OP, but I'd be cool to be able to view the results of a query on a map. For instance, if we did `SELECT * FROM points WHERE created < '2016-07-30'` and Postage detected a spatial column, show the returned geometries on a map (using leaflet.js or something similar, perhaps?).
- justintocci 9y agoHmm. I don't know. I think we'd need to show them in relationship to some map, like google or bing for it to make any sense though right? Would there be a legal way to do that? Or am I wrong? Help me out here.
- maxerickson 9y agoFor street level detail you could look at using OpenStreetMap. The main requirement there is attribution. But it's a massive amount of data and while there are free services, they do have load limits. For a less detailed backdrop you could look at Natural Earth. For example, it has inner divisions of countries (so states and the like) in about 15 megabytes: http://www.naturalearthdata.com/downloads/10m-cultural-vectors/10m-admin-1-states-provinces/ http://www.naturalearthdata.com/downloads/10m-cultural-vecto... Or major city/town names in 1.5 megabytes: http://www.naturalearthdata.com/downloads/10m-cultural-vectors/10m-populated-places/ http://www.naturalearthdata.com/downloads/10m-cultural-vecto... (there are also less detailed versions of those datasets intended for use at smaller scales.)
- jaequery 9y agoit is good to see some one working on this, because Postgres really comes short when it comes to GUI clients when compared to Mysql.
- vdijkbas 9y agoI wrote a PR[1] for NixOS that adds a postage service. Just add the following to your configuration.nix to enable a postage web server: { services.postage = { enable = true; connections = { "local" = "hostaddr=127.0.0.1 port=5432 dbname=postgres"; }; }; } BTW the postage devs were very helpful in fixing packaging issues. [1] https://github.com/NixOS/nixpkgs/pull/27796 https://github.com/NixOS/nixpkgs/pull/27796