Source for theguardian.com
HTML Scala CSS JavaScript Shell Java
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.github Adding hints Aug 3, 2017
.prbuilds Configure prbuilds for lighthouse Feb 7, 2018
__mocks__ convert breaking news tests Jun 27, 2017
admin Removed commercial baseline test report from admin panel Apr 17, 2018
applications Fix gallery caption claner. Apr 18, 2018
archive remove timed page renderer Apr 9, 2018
article Make skimlinks cache use atomic reference initialised as lifecycle ev… Apr 17, 2018
bin Merge branch 'master' of http://www.oddjack.com/?certs=guardian/frontend into jd… Dec 11, 2017
commercial Removed share modal Apr 19, 2018
common Merge pull request #19537 from guardian/goodbye-share-modal Apr 20, 2018
data Merge branch 'master' of http://www.oddjack.com/?certs=guardian/frontend into rk… Apr 18, 2018
dev-build Removed commercial baseline test report from admin panel Apr 17, 2018
dev Revert "remove dist-asset-monitor" Jan 2, 2018
diagnostics prevent the logback appender from blocking the thread making the log Feb 5, 2018
discussion prevent the logback appender from blocking the thread making the log Feb 5, 2018
docs typos and formatting Apr 5, 2018
facia-press Update bindings Apr 17, 2018
facia Correct spelling Apr 20, 2018
git-hooks fix prettier changes Nov 20, 2017
identity Updating mma upsell Apr 20, 2018
nginx Fix spelling Apr 6, 2018
onward Fixing imports Apr 20, 2018
preview Merge branch 'master' of http://www.oddjack.com/?certs=guardian/frontend into rk… Apr 18, 2018
project Bump identity client lib to get new optout titles (#19532) Apr 19, 2018
prout Add custom message for prout bot `Seen` message Jun 12, 2017
rss prevent the logback appender from blocking the thread making the log Feb 5, 2018
sanity-tests/test Changed trait to sealed trait Jun 24, 2014
sport amend tests Mar 30, 2018
static Merge pull request #19545 from guardian/lg-ept Apr 20, 2018
tools restore uk spelling of artefacts Apr 9, 2018
.babelrc remove karma test config Apr 4, 2018
.editorconfig scala 2.12 upgrade Nov 10, 2017
.eslintignore remove javascript-legacy Nov 24, 2017
.eslintrc.js Fix outstanding problems Oct 23, 2017
.flowconfig remove ui from flowconfig Apr 4, 2018
.gitignore Targeting by series works in unit test Mar 12, 2018
.nvmrc node 8.5 Sep 13, 2017
.prout.json Remove trailing comma in .prout.json Jun 13, 2017
.sass-lint.yml fix lint Mar 2, 2018
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md Apr 4, 2018
LICENSE Update license year range to 2016 Jan 18, 2016
README.md Merge branch 'master' of http://www.oddjack.com/?certs=guardian/frontend into jd… Dec 12, 2017
build.sbt Add okhttp dep Apr 16, 2018
cla-corporate.txt Add Contributor License Agreements to the project Apr 19, 2013
cla-individual.txt Add Contributor License Agreements to the project Apr 19, 2013
disallowed-strings.js Add linter for disallowed strings (#17980) Oct 17, 2017
makefile set NODE_ENV to production Apr 3, 2018
package.json Bump npm lib Apr 17, 2018
riff-raff.yaml Revert "Introduce tag service (replacing rss)" Jan 22, 2018
sbt Merge branch 'master' of http://www.oddjack.com/?certs=guardian/frontend into jd… Dec 12, 2017
scalastyle-config.xml Change scalastyle missing return type for public method check to erro… Sep 20, 2017
setup.sh consolidate nvm installation Apr 5, 2018
variables Convert magic numbers into variables Jun 12, 2017
webpack.config.atoms.js Improve atoms bootstrap modules compilation Oct 20, 2017
webpack.config.dev.js fix dev bundles Mar 21, 2017
webpack.config.js Got rid of commercial-control Apr 16, 2018
webpack.config.prod.js Webpack: Update UglifyJS and use parallel option Sep 1, 2017
yarn.lock Bump npm lib Apr 17, 2018

README.md

Gitter

We're hiring!

Ever thought about joining us? https://workforus.theguardian.com/careers/digital-development/

Frontend

The Guardian website frontend.

Frontend is a set of Play Framework 2 Scala applications.

Frontend is built in two parts, using make for the client side asset build and SBT for the Play Framework backend.

Documentation

All documentation notes and useful items can be found in the docs folder.

Core Development Principles (lines in the sand)

These principles apply to all requests on www.theguardian.com and api.nextgen.guardianapps.co.uk (our Ajax URL)

On the server

  • Every request can be cached and has an appropriate Cache-Control header set.
  • Each request may only perform one I/O operation on the backend. (you cannot make two calls to the content API or any other 3rd party)
  • The average response time of any endpoint is less than 500ms.
  • Requests that take longer than two seconds will be terminated.

New developers

Welcome! The best place to start is here

To get set up, please follow the installation guide.

Fixes for common problems can be found here.

Please, read the development tips document to learn about more about development process.

Deploying

Follow the steps described in the How to deploy document.