Cross-platform client for PostgreSQL databases
Go to file
Dan Sosedoff 01a69b9bf9 Merge pull request #194 from sosedoff/kill-running-query
Allow stopping any running query from activity panel
2016-11-05 20:51:31 -05:00
data Add escaping to order statement 2016-11-03 19:56:55 -05:00
examples Move systemd script to examples dir 2016-09-28 20:51:54 -05:00
Godeps Upgrade to Go1.6, use vendor 2016-05-26 16:37:46 -07:00
pkg Allow stopping any running query from activity panel 2016-11-05 19:53:10 -05:00
screenshots Update screenshots 2016-01-10 16:08:13 -06:00
script Deprecate Boot2Docker in favor of Docker for Mac for integration testing 2016-11-03 20:05:50 -05:00
static Allow stopping any running query from activity panel 2016-11-05 19:53:10 -05:00
vendor Upgrade to Go1.6, use vendor 2016-05-26 16:37:46 -07:00
.gitattributes Do not show bindata.go in the git diff log 2016-01-08 15:34:02 -06:00
.gitignore Add sample coverage file to gitignore 2015-03-04 08:53:41 -06:00
.travis.yml Remove PGHOST from test-all script for travis 2016-11-04 10:33:37 -05:00
app.json Merge pull request #90 from freeformz/patch-2 2015-07-14 21:19:55 -05:00
appveyor.yml Fix appveyor builds 2016-01-04 18:51:25 -06:00
CHANGELOG.md Version bump: 0.9.5 2016-10-01 20:24:49 -05:00
CONTRIBUTING.md Contributing guidelines 2015-05-20 21:50:22 -05:00
Dockerfile Update dockerfile 2016-07-29 10:43:23 -05:00
LICENSE Readme, license 2016-01-05 00:41:50 -06:00
main.go Add ability to launch pgweb with url prefix 2016-02-19 21:14:56 -06:00
Makefile Fix compile tags in makefile due to compiler warnings 2016-10-01 20:32:05 -05:00
Procfile Bind to 0.0.0.0 in Procfile 2014-11-05 22:15:05 -06:00
README.md Update readme 2016-01-21 20:01:53 -06:00
SCREENS.md Update screenshots 2016-01-10 16:08:13 -06:00

pgweb

Web-based PostgreSQL database browser written in Go.

Release Linux Build Windows Build

Overview

Pgweb is a web-based database browser for PostgreSQL, written in Go and works on OSX, Linux and Windows machines. Main idea behind using Go for backend development is to utilize ability of the compiler to produce zero-dependency binaries for multiple platforms. Pgweb was created as an attempt to build very simple and portable application to work with local or remote PostgreSQL databases.

See application screenshots

Features

  • Cross-platform support OSX/Linux/Windows 32/64-bit
  • Simple installation (distributed as a single binary)
  • Zero dependencies
  • Works with PostgreSQL 9.1+
  • SSH Connections
  • Multiple database sessions
  • Simple database browser
  • Execute and analyze custom SQL queries
  • Table and query data export to CSV/JSON/XML
  • Query history
  • Server bookmarks

Visit WIKI for more details

Demo

Visit https://pgweb-demo.herokuapp.com to see pgweb in action.

Installation

Precompiled binaries for supported operating systems are available.

More installation options

Usage

Start server:

pgweb

You can also provide connection flags:

pgweb --host localhost --user myuser --db mydb

Connection URL scheme is also supported:

pgweb --url postgres://user:password@host:port/database?sslmode=[mode]

Multiple database sessions

To enable multiple database sessions in pgweb, start the server with:

pgweb --sessions

Or set environment variable:

SESSIONS=1 pgweb

Deploy on Heroku

Heroku Deploy

Testing

Before running tests, make sure you have PostgreSQL server running on localhost:5432 interface. Also, you must have postgres user that could create new databases in your local environment. Pgweb server should not be running at the same time.

Execute test suite:

make test

If you're using Docker locally, you might also run pgweb test suite against all supported PostgreSQL version with a single command:

make test-all

Contribute

  • Fork this repository
  • Create a new feature branch for a new functionality or bugfix
  • Commit your changes
  • Execute test suite
  • Push your code and open a new pull request
  • Use issues for any questions
  • Check wiki for extra documentation

Contact

License

The MIT License (MIT)

Copyright (c) 2014-2016 Dan Sosedoff, dan.sosedoff@gmail.com