GopherPit

GopherPit is a web service that allows you to have remote import paths for Go (language) packages with custom domain or a subdomain under gopherpit.com.

import "project.example.com/package"

The key benefit is that your packages are independent of the version control system provider, whether it is GitHub, Bitbucket or private repository. You can change it whenever you like, and also keep the same import paths. Also, custom domains means better branding of your packages, if you care about it.

Features:

  • Use your own domains or subdomains (or subdomains under gopherpit.com) for Go packages
  • Specify a custom Git branch or tag for a package path for different package versions in the same repository that break backward compatibility with master or other branches
  • Add as much domains and packages as you like
  • Allow other users to manage packages for each domain
  • Keep track of every change that has been made
  • Automatic requests and renewals of TLS certificates thanks to Let’s Encrypt™

The service is free of charge.

The functionality is provided by the mechanism of the go tool:

"For code hosted on other servers, import paths may either be qualified with the version control type, or the go tool can dynamically fetch the import path over https/http and discover where the code resides from a <meta> tag in the HTML."

GopherPit just provides a service to serve and manage this meta tags. It does not require any additional tools beside the go tool.