Web-based SQL editor run in your own private cloud. Supports MySQL, Postgres, SQL Server, Vertica, Crate, Presto, SAP HANA, and Cassandra
Rick Bergfalk
Latest commit 2bcde8c Oct 17, 2018



Build Status

A web app for writing and running SQL queries and visualizing the results. Supports Postgres, MySQL, SQL Server, Crate, Vertica, Presto, and SAP HANA. Other databases potentially supported via unix odbc support.

Heads up! New v3 branch has been started for new/breaking development

If you are working on a feature, or want to run the cutting edge, look to that branch. Expect breakage until things are finalized. See v3 branch for more details.

Installation, Usage, Screenshots

Visit project page at http://rickbergfalk.github.io/sqlpad/.

SQLPad Query Editor

Using Docker Image

The docker image runs on port 3000 and uses /var/lib/sqlpad for the embedded database directory.

Some configuration is exposed via environment variables. See configItems.js for details on environment variables considered (envVar field).

See docker-validation folder for example docker-compose setup with SQL Server.


  • Clone/download repo
  • Install node 6 or later (nvm recommended)
  • Install npm5 via npm i npm -g
  • Install npm modules by running npm install
  • run npm start

At this point you should have both backend and front-end development servers running.

http://localhost:3000 serves react front-end in dev-mode http://localhost:3010 serves front-end compiled for production

Both front-end/back-end should auto-refresh/auto-reload on file change.

To build front-end production files run npm run build.


A docker-compose file with is provided to provide an empty postgres database to test with. If you have docker installed you can do the following:

# Bring database containers up in background
docker-compose up -d

# To bring database down
docker-compose down

# To remove dangling containers volumes etc
docker system prune

To connect to the database within SQLPad during development use the following settings:

driver: postgres
host: localhost
database: sqlpad
username: sqlpad
password: sqlpad