Cross-platform client for PostgreSQL databases
Go to file
Oleg Samsonov e6df3d19fa
Some checks failed
checks / tests (10) (push) Has been cancelled
checks / tests (11) (push) Has been cancelled
checks / tests (12) (push) Has been cancelled
checks / tests (13) (push) Has been cancelled
checks / tests (14) (push) Has been cancelled
checks / tests (15) (push) Has been cancelled
checks / tests (16) (push) Has been cancelled
checks / tests (17) (push) Has been cancelled
checks / tests (9.6) (push) Has been cancelled
checks / tests-windows (push) Has been cancelled
checks / lint (push) Has been cancelled
checks / fmt (push) Has been cancelled
demo deploy / Deploy to Fly (push) Has been cancelled
docker / docker images (push) Has been cancelled
add exec time of empty queries (#763)
* add exec time of empty queries
* add { }
* fix space
* use proposed format
2024-11-19 21:55:44 -08:00
.github/workflows Try running checks against pg 17 (#758) 2024-10-16 20:28:27 -07:00
config Fix typos (#764) 2024-11-17 22:08:29 -08:00
data Local queries (#641) 2023-02-02 16:13:14 -06:00
pkg Fix typos (#764) 2024-11-17 22:08:29 -08:00
screenshots Update screenshots 2016-01-10 16:08:13 -06:00
script Replace gox with a bash build script (#571) 2022-07-26 20:17:40 -05:00
static add exec time of empty queries (#763) 2024-11-19 21:55:44 -08:00
.dockerignore Docker build refactor (#568) 2022-06-27 22:31:57 -05:00
.gitattributes Do not show bindata.go in the git diff log 2016-01-08 15:34:02 -06:00
.gitignore Add env and envrc into gitignore 2023-06-17 12:01:21 -05:00
CHANGELOG.md Fix typos (#764) 2024-11-17 22:08:29 -08:00
CONTRIBUTING.md Fix typos (#764) 2024-11-17 22:08:29 -08:00
docker-compose-pg.yml Test with pg16 (#691) 2023-09-26 22:40:57 -05:00
docker-compose.yml Bump postgres version used in docker compose to 15 (#729) 2024-03-27 23:02:46 -07:00
Dockerfile fix: Propagate CGO_ENABLED environment variable to docker build (#724) 2024-03-26 22:44:58 -07:00
fly.toml Change demo env idle timeout to 30 mins 2023-04-04 15:43:30 -05:00
go.mod Build on 1.22 (#726) 2024-03-22 21:03:07 -07:00
go.sum Bump github.com/gin-gonic/gin from 1.7.7 to 1.9.1 (#680) 2023-06-17 12:03:46 -05:00
LICENSE License years 2024-01-04 23:34:40 -06:00
main.go Move all CLI logic into its own package 2017-05-16 21:28:07 -05:00
Makefile Add support for user functions (#608) 2022-12-07 11:58:07 -06:00
Procfile Bind to 0.0.0.0 in Procfile 2014-11-05 22:15:05 -06:00
README.md Update references from master branch to main branch (#750) 2024-09-08 08:17:18 -07:00
SCREENS.md Update screenshots 2016-01-10 16:08:13 -06:00

pgweb

Simple web-based and cross platform PostgreSQL database explorer.

Release Linux Build Go Report Card GoDoc Docker Pulls

Overview

Pgweb is a web-based database explorer for PostgreSQL, written in Go, and works on Mac, Linux and Windows machines. Distributed as a simple binary with zero dependencies. Very easy to use and packs just the right amount of features.

See application screenshots

Features

  • Cross-platform: Mac/Linux/Windows (64bit).
  • Simple installation (distributed as a single binary).
  • Zero dependencies.
  • Works with PostgreSQL 9.1+.
  • Supports native SSH tunnels.
  • Multiple database sessions.
  • 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.fly.dev/ to see Pgweb in action.

Installation

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]
pgweb --url "postgres:///database?host=/absolute/path/to/unix/socket/dir"

Multiple database sessions

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

pgweb --sessions

Or set environment variable:

PGWEB_SESSIONS=1 pgweb

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

License

The MIT License (MIT). See LICENSE file for more details.