A Go application that generates the HTML pages for the developer hub for ons.gov.uk.
Available at developer.ons.gov.uk.
To run this app you'll need certain versions installed:
Language | version |
---|---|
Go | >= 1.21.7 |
Node | = 20.1.3 |
Python | >= 3.9.2 |
These versions are what the pipeline will build with.
You can use nvm use
to set your Node version to the current compatible one.
You'll also need github.com/fogleman/serve@latest
which you can install using:
make install-prereqs
The templates that make up the developer hub are available in /templates
.
Static pages, such as the introduction are in /static
.
The most common use case will be to update files and watch them change on the local site:
to watch the files for changes and host them run:
make watch-serve
or, with a custom port:
make watch-serve PORT=8000
You can also load API specs from your local machine. Just provide the file path instead of a URL, and the app will figure out if it's local or remote.
Example:
sources := spec.APIs{
{"dataset-api", "https://raw.githubusercontent.com/ONSdigital/dp-dataset-api/master/swagger.yaml", nil, nil},
{"local-api", "/path/to/your/local/swagger.yaml", nil, nil},
}
To watch and automatically rebuild the site on any changes to any .go
, .md
or .tmpl
file run:
make watch
To only serve the built assets (on default port of 23600
) run:
make serve
...which has an optional PORT
environment variable, for example:
make server PORT=8000
Environment variable | Default | Description |
---|---|---|
PORT | 23600 | The port to serve the files on |
See CONTRIBUTING for details.
Copyright © 2017-2024, Office for National Statistics (https://www.ons.gov.uk)
Released under MIT license, see LICENSE for details.