🚨 Assets Frontend has been deprecated in favour of the Play Frontend. 🚨
If you do decide to use Assets Frontend anyway you need to be aware of the vulnerabilities including but not limited to the ones listed here ]https://github.com/hmrc/assets-frontend/security/dependabot](https://github.com/hmrc/assets-frontend/security/dependabot). There are also known accessibility issues when using Assets Frontend which will cause delays with going live. As of 13th October 2021, we won't be making updates to Assets Frontend so we recommend moving over to the latest Play Frontend Libraries
This repository contains the source files and documentation for the Components & Design Patterns used to design and build digital services for the HMRC Tax Platform.
It provides additional styles on top of the GOV.UK styles.
To install multiple versions of Node.js, you may find it easier to use a node version manager:
Clone this repository and install its dependencies:
$ git clone https://github.com/hmrc/assets-frontend.git
$ cd assets-frontend
$ npm install
- Clone the repo locally:
git clone https://github.com/hmrc/assets-frontend.git
- In your file system, navigate to the assets-frontend directory:
cd assets-frontend
- Checkout the
gh-pages
branch:git checkout gh-pages
- In your file system, navigate one directory level above the
assets-frontend
folder:cd ../
- Start a local server for serving the pages:
python3 -m http.server --cgi 8888
- In the browser, navigate to to
http://localhost:8888/assets-frontend
- Run
npm start
- The Design System is available at http://localhost:9034/
- Latest V4 Assets are then available at http://localhost:9032/assets/v4-SNAPSHOT/...
- Latest V3 Assets are then available at http://localhost:9032/assets/v3-SNAPSHOT/...
- Run
npm run dev:all
or./server.sh dev
- The Design System is available at http://localhost:9034/
- The Component Library is available at http://localhost:9033/
- Run
./server.sh
- V4 Assets are then available at http://localhost:9032/assets/4.11.0/...
- V3 Assets are then available at http://localhost:9032/assets/3.11.0/...
For now, the quickest and simplest way to add assets-frontend to your prototype is to grab the built CSS and JS from production.
Just replace <VERSION>
in the links below with the released version you want to use (we recommend using the latest).
If your prototype is based on the GOV.UK prototype kit then do the following:
CSS
Save the file found at
https://www.tax.service.gov.uk/assets/<VERSION>/stylesheets/application.min.css
to /app/assets/sass/assets-frontend.css
.
And add the following to app/views/includes/head.html
:
<link href="/public/stylesheets/assets-frontend.css" rel="stylesheet" type="text/css" />
JavaScript
Save the file found at
https://www.tax.service.gov.uk/assets/<VERSION>/javascripts/application.min.js
to /app/assets/javascripts/assets-frontend.js
And add the following to app/views/includes/head.html
<script src="/public/javascripts/assets-frontend.js"></script>
If your frontend is based on init-service, then you just need to make sure the configuration for assets in the application.conf file has the line version = ${?ASSETS_FRONTEND_VERSION}
after declaring the actual version.
Once it has, you just need to set an environment variable before running your frontend:
$ ASSETS_FRONTEND_VERSION=999-SNAPSHOT sbt run
If you’re using service-manager, please read the service manager guidance in the Wiki.
Running npm run release
calls the release gulp task and this happens on our internal Jenkins instances.
The final step of our internal release pipeline is to version and deploy the compiled assets to https://www.tax.service.gov.uk/assets/.
Releasing assets for use in production is currently a process owned by the Service Design Tools team.
If you’d like a new version of assets-frontend released, please get in touch with us in the #team-sdt Slack channel.
The HMRC Design System can be viewed here.
For detailed information on how the HMRC Design System works, please read the Design System page in the Wiki.
🚨 The Component Library has been deprecated in favour of the HMRC Design System.🚨
If your service relies on a component or pattern that doesn’t appear in the HMRC Design System then please follow the Design System contribution guidelines.
For detailed information on how the Component Library works, please read the Component Library guidance in the Wiki.
For details on how to contribute Design Patterns, please take a few minutes to review our Design Pattern standards and contribution process before you submit your request, otherwise it may be rejected.
If you’ve spotted an issue or thought of a feature that you’d like to contribute to assets-frontend, please take a few minutes to review our contribution process and guidelines for Assets Frontend before you submit your request, otherwise it may be rejected.
This code is open source software licensed under the Apache 2.0 License.