Four years of Pgweb
Pgweb is a simple and cross-platform UI for PostgreSQL. It's by far my most successful opensource project to date with over 125k downloads. Not only successful, but it's so valuable that i have been personally using it almost every work day since its inception in 2014.
The main reason that drove me to create Pgweb was the lack of lightweight and minimalisting database browser, specifically for PostgreSQL. At some point i primarily switched over to Postgres from MySQL for all my work and side projects, but i couldn't find a tool that was on par with Sequel Pro. Which was pretty good for my needs, fast and free.
At the time there were a bunch of heavy Postgres UIs that worked fine but i didn't really like the clutter. All i needed was an app that showed the list of my tables and allowed me to quickly write some SQL. That's was pretty much it! One of my favorite navite OSX clients was Postico, very similar to Sequel Pro but unfortunately Mac only.
Go was getting traction back in 2014. I really liked the language and been playing with a bunch of small tools since 2013, for work and whatnot. One day i stumbled upon go-bindata. The main concept here is that you can embed all your assets into the binary effectively making the deployment of your app as simple as copy-and-paste of the executable onto your host. Go-bindata converts the static assets (js/css/html) into UTF8 strings and embeds them into the binary so there are no need to store files anywhere in the filesystem. Of course the approach is nothing new, people have been doing this for years. With Go you have the convenience and speed. Oh, and no dependencies*.
Few days into experiments and coding and i've got myself a first version of Pgweb. It had a very limited functionality: connect to a database, browse table contents and a custom SQL query editor. That was basically 0.1.0 version.
After the initial launch i started working on more features, adding only what i needed. There was no plan to make any money off it. I shared the project with a few friends, they all liked it. The main feature that drove the adoption of Pgweb was the cross-platform support. OSX, Linux and Windows were all supported out of the box. Fast forward 4 years here's the 0.9.8 version for the comparison:
Over the years i've kept adding more features (and accepting changes from the community) while trying to maintain the functionality as simple and straightforward as possible. It worked out pretty well i think. You can connect to local or remote databases, use built-in SSH tunnel, bookmarks, query history, various running modes, export data as CSV, JSON and XML. And of course write custom SQL queries! Pgweb plays nice with Heroku Postgres and Docker .
With all that said, i'm looking forward the next 4 years of steady development and maybe offer a Pro version for people who need a little bit more functionality, like editing data and table structure, charts and perhaps a white-label mode for companies that use Pgweb to share data with the clients.