Skip to content

alphagov-mirror/static

 
 

Repository files navigation

Static

This application defines global templates for GOV.UK pages.

Screenshots

screenshot

Nomenclature

  • slimmer - Rack middleware for wrapping Rack applications in shared templated layouts

Technical documentation

Running the application

./startup.sh

This will start the server running on http://0.0.0.0:3013

Running Locally

If you'd like to run static locally, and keep all its asset links pointing to the same local instance, you'll need to set PLEK_SERVICE_STATIC_URI, which is the host used for static assets (even on static).

Otherwise it defaults to static.dev.gov.uk, which won't exist if you're just running this repo locally, without the rest of the GOV.UK stack.

To run this app locally, and have it point at its own assets, run it like this:

PLEK_SERVICE_STATIC_URI=0.0.0.0:3013 ./startup.sh

If you're making front end changes to static and testing them out on your development VM, you may find that it takes several minutes for changes to appear due to caching in Slimmer. One approach to speed this up is to run all of the relevant app's dependencies (including static), then start that app separately. Restarting the app should pick up the changes.

For example, to see changes made to static templates which are wrapped around feedback pages, run bowl feedback --without=feedback in one terminal and the .startup.sh script for feedback in a separate terminal. Following local edits to static, restarting just feedback should be sufficient.

If you repeatedly see 504 Gateway Timeout errors when developing with static in your development VM it's possible to increase the proxy_read_timeout value in /etc/nginx/sites-available/static.dev.gov.uk and restart nginx on the VM.

Running the test suite

bundle exec rake runs the test suite.

Javascript unit tests

Tests can run in browser at /specs

Or in terminal to run only the jasmine tests you can use RAILS_ENV=test bundle exec rake jasmine:ci or in Docker govuk-docker run -e RAILS_ENV=test static-lite bundle exec rake jasmine:ci

Packages

No packages published

Languages

  • JavaScript 55.8%
  • Ruby 21.5%
  • HTML 12.5%
  • SCSS 10.0%
  • Other 0.2%