GoDoc Build Status Coverage Status

This is an accompanying repository of the article Back to basics: Writing an application using Go and PostgreSQL by Henrique Vicente. Feel free to open issues to ask any questions or comment on anything.

Environment variables

pgxtutorial uses the following environment variables:

Environment Variable Description
PostgreSQL environment variables Please check
INTEGRATION_TESTDB When running go test, database tests will only run if INTEGRATION_TESTDB=true


To play with it install Go on your system.
You’ll need to connect to a PostgreSQL database.
You can check if a connection is working by calling psql.

To run tests:

# Run all tests passing INTEGRATION_TESTDB explicitly
$ INTEGRATION_TESTDB=true go test -v ./...

To run application:

# Create a database
$ psql -c "CREATE DATABASE pgxtutorial;"
# Set the environment variable PGDATABASE
$ export PGDATABASE=pgxtutorial
# Run migrations
$ tern migrate -m ./migrations
# Execute application
$ go run ./cmd/pgxtutorial
2021/11/22 07:21:21 HTTP server listening at localhost:8080
2021/11/22 07:21:21 gRPC server listening at

See also


View Github