internal/screentest: add package to compare screenshots web pages

As we clean up page styles post golang.org and go.dev merge,
and begin to implement the dark theme, we can use screenshot
testing to check that code changes don't result in unintended
style or html content changes.

Change-Id: Ia65f98f133df0f4a9fa3f382fd30c2455d65d73d
Reviewed-on: https://go-review.googlesource.com/c/website/+/371435
Run-TryBot: Jamal Carvalho <jamal@golang.org>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Jonathan Amsterdam <jba@google.com>
Trust: Jonathan Amsterdam <jba@google.com>
Trust: Jamal Carvalho <jamalcarvalho@google.com>
9 files changed
tree: 8319b2f18f447f206f718ca9312a0853fa2b4434
  1. _content/
  2. _later/
  3. cmd/
  4. internal/
  5. tour/
  6. .eslintrc.json
  7. .gitattributes
  8. .prettierrc
  9. .prettierrc.yaml
  10. .stylelintrc.json
  11. AUTHORS
  12. codereview.cfg
  13. content.go
  14. CONTRIBUTING.md
  15. CONTRIBUTORS
  16. go-app-deploy.sh
  17. go.mod
  18. go.sum
  19. LICENSE
  20. PATENTS
  21. README.md
README.md

Go website

Go Reference

This repo holds content and serving programs for the go.dev and golang.org web sites.

Content is in _content/ (go.dev) and tour/ (go.dev/tour). Server code is in cmd/ and internal/.

To run the combined go.dev+golang.org server to preview local content changes, use:

go run ./cmd/golangorg

The supporting programs cmd/admingolangorg and cmd/googlegolangorg are the servers for admin.golang.org and google.golang.org. (They do not use the _content/ directories.)

Each command directory has its own README.md explaining deployment.

JS/CSS Formatting

This repository uses prettier to format JS and CSS files.

See also:

The version of prettier used is 1.18.2.

It is encouraged that all JS and CSS code be run through this before submitting a change. However, it is not a strict requirement enforced by CI.

Deploying

Each time a CL is reviewed and submitted, the code is deployed to App Engine. See cmd/golangorg/README.md for details.

Report Issues / Send Patches

This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see https://go.dev/doc/contribute.

The main issue tracker for the website repository is located at https://github.com/golang/go/issues. Prefix your issue with “x/website:” in the subject line, so it is easy to find.