Skip to main content

Gov UK dashboards

This package contains functionality which is common to UK Government plotly dashboards.

Table of Contents

Background

This package is to enable quicker development of government data dashboards, such as the government colour schemes and plotly components.

Install

For installation using pip:

pip install gov-uk-dashboards

or for a specific version:

pip install gov-uk-dashboards~=6.7.0

For installation using conda, paste the following code into the environment configuration file:

 - pip:
     - gov-uk-dashboards~=6.7.0

Usage

Using Government dashboard template with dash:

import dash
from gov_uk_dashboards.template import read_template

app = dash.Dash(__name__, suppress_callback_exceptions=True)
app.index_string = read_template()

For colours:

from gov_uk_dashboards.colours import GovUKColours

GovUKColours.DLUHC_BLUE.value

For components:

from gov_uk_dashboards.components.plotly import banners

banners.message_banner('category','message')

For formatting:

from gov_uk_dashboards.formatting.human_readable import format_as_human_readable

format_as_human_readable(1200,prefix='£')

For figures:

from gov_uk_dashboards import figures

chart_data = figures.ChartData(
    dataframe,
    x_column = "Date",
    y_column = "Value",
    category_column = "Category"
)

line_chart = figures.line_chart(
    data = chart_data,
    title = "Chart title"
    line_style = {
        "Category 1": figures.format.LineFormat(
            color = "#000000",
            dash_pattern = figures.enums.DashPatterns.SOLID,
        ),
    }
)

Updating the CSS

We use SCSS to generate our CSS - NEVER directly alter the dashboard.css file in the assets folder. To update CSS:

  • Add your changes to dashboard.scss in the sccs folder
  • Run npm install if you haven't recently (/ever)
  • Run npm run sass to generate CSS from SCSS
  • Change package version in setup.py
  • Push your changes to a new branch
  • Try new CSS on dashboard repo using pip install git+https://github.com/communitiesuk/pkg_gov_uk_dashboards.git@

Updating govuk-frontend CSS

  • Update govuk-frontend version in package.json
  • Run npm run sass to generate CSS from SCSS
  • Follow steps above to test new CSS on dashboard repo

Updating the package

When making changes to the package, the following should be done:

  • Update version in setup.py accordingly
    • Style: Major.Minor.Patch, e.g. 1.2.3
    • Major - any breaking changes to previous functionality.
    • Minor - additional functionality that doesn't effect backward compatibility. When updated the patch version should be reset to zero. eg. 2.3.1 goes to 2.4.0 for minor update.
    • Patch - bug fixes that don't effect backward compatibility. For more information see here
  • After merging with main, go here to add a new version tag.
    • Click 'Draft a new release'
    • Under 'Choose a tag' dropdown, enter 'v<version number>'. Click 'Create new tag'
    • Give the tag a release title, this should be the same as the tag name.
    • Give a bullet point list of changes in the "Describe this release" section.
    • Make sure 'Target' is set to 'main'.
    • Click 'Publish release'.
    • The release will be uploaded to PyPI.org automatically.
  • Update the package references within projects where the package is used, by following the Installation section.

Trying out changes to the package from other repositories

When you want to make changes to the package to use in another repository, it can be useful to see what changes would look like before commiting to the package repo. You can do this by making changes directly to the package files in the conda environment of the repository you're working in.

  • Open the file you wish to change in the conda environment
  • Do this by clicking into functions from the package in your IDE or by finding the file you wish to change in your file system, e.g. .../anaconda3/envs/*repo*/lib/python3.9/site-packages/gov_uk_dashboards/components/...
  • Make the changes to the package file and you should see the changes in your localhost on refresh
  • If you want to undo your changes: pip install --upgrade --force-reinstall <package_name>~=<package_version>

When you're happy, you can make the changes on a branch in the package repo and install it locally to check it works as expected when imported before merging into main in the package repo:

  • You can update the environment.yml to point at your branch or run pip install with the url: git+https://github.com/communitiesuk/pkg_gov_uk_dashboards.git@<your-branch>

License

MIT Copyright (c) 2022 Crown Copyright (Department for Levelling Up, Housing and Communities)

Release files for gov-uk-dashboards 33.16.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for gov-uk-dashboards 33.16.0
File Size Uploaded
gov_uk_dashboards-33.16.0.tar.gz 4.4 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for gov-uk-dashboards 33.16.0
File Interpreter ABI Platform
gov_uk_dashboards-33.16.0-py3-none-any.whl Python 3 none any Details

Total release size:8.9 MB

Release files / gov_uk_dashboards-33.16.0.tar.gz

Download URL gov_uk_dashboards-33.16.0.tar.gz
Size 4.4 MB
Tags Source
SHA-256 checksum
How to use checksums
be85c36fea0aa515da3b03b1874f6d5f7a74bdfbb06d379995091674aa34ca5a
BLAKE2b-256 checksum
How to use checksums
d0ed535b1c6d0d904c6d5e88352a1d6056f1c862d95db35a47b38d03db5d22fd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / gov_uk_dashboards-33.16.0-py3-none-any.whl

Download URL gov_uk_dashboards-33.16.0-py3-none-any.whl
Size 4.5 MB
Tags Python 3
SHA-256 checksum
How to use checksums
27ebc09045778bb088f8fadbc9e4f9bf6443f24f66eb7b1d6a609fbf26a1a9b5
BLAKE2b-256 checksum
How to use checksums
01df5a5b4578fe8e442eab71de061fd5c9528f6b5987511df71351a9b876a8bd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

33.16.0 This release

2 release files

33.9.0

2 release files

33.8.1

2 release files

33.8.0

2 release files

33.7.0

2 release files

33.6.0

2 release files

33.5.1

2 release files

33.5.0

2 release files

33.2.0

2 release files

33.1.0

2 release files

33.0.0

2 release files

32.5.0

2 release files

32.4.0

2 release files

32.3.0

2 release files

32.1.0

2 release files

32.0.0

2 release files

31.9.0

2 release files

31.8.0

2 release files

31.7.0

2 release files

31.6.0

2 release files

31.5.0

2 release files

31.4.0

2 release files

31.3.0

2 release files

31.2.0

2 release files

31.1.0

2 release files

30.0.1

2 release files

30.0.0

2 release files

29.1.1

2 release files

29.1.0

2 release files

29.0.0

2 release files

27.0.0

2 release files

26.9.2

2 release files

26.9.1

2 release files

26.8.0

2 release files

26.7.0

2 release files

26.6.0

2 release files

26.5.0

2 release files

26.3.0

2 release files

26.2.0

2 release files

26.1.0

2 release files

25.6.1

2 release files

25.6.0

2 release files

25.5.2

2 release files

25.5.1

2 release files

25.5.0

2 release files

25.3.2

2 release files

25.3.1

2 release files

25.3.0

2 release files

25.2.0

2 release files

25.1.0

2 release files

25.0.0

2 release files

24.1.1

2 release files

22.2.0

2 release files

22.1.0

2 release files

22.0.0

2 release files

21.2.2

2 release files

21.2.1

2 release files

21.2.0

2 release files

21.1.0

2 release files

21.0.1

2 release files

21.0.0

2 release files

18.0.0

2 release files

17.2.0

2 release files

17.1.0

2 release files

17.0.0

2 release files

16.2.0

2 release files

16.1.0

2 release files

16.0.0

2 release files

15.2.1

2 release files

15.0.2

2 release files

15.0.1

2 release files

15.0.0

2 release files

14.0.0

2 release files

13.5.2

2 release files

13.5.1

2 release files

13.5.0

2 release files

13.4.2

2 release files

13.4.1

2 release files

13.4.0

2 release files

13.3.0

2 release files

13.2.0

2 release files

13.0.0

2 release files

12.3.4

2 release files

12.3.3

2 release files

12.3.2

2 release files

12.3.1

2 release files

12.2.0

2 release files

12.1.1

2 release files

12.1.0

2 release files

12.0.0

2 release files

11.4.0

2 release files

11.0.2

2 release files

11.0.0

2 release files

10.0.0

2 release files

9.43.0

2 release files

9.42.0

2 release files

9.41.1

2 release files

9.41.0

2 release files

9.40.0

2 release files

9.39.0

2 release files

9.35.0

2 release files

9.34.0

2 release files

9.33.0

2 release files

9.32.0

2 release files

9.31.1

2 release files

9.31.0

2 release files

9.30.1

2 release files

9.30.0

2 release files

9.29.1

2 release files

9.28.0

2 release files

9.27.0

2 release files

9.26.0

2 release files

9.25.0

2 release files

9.24.0

2 release files

9.23.0

2 release files

9.22.0

2 release files

9.21.0

2 release files

9.20.0

2 release files

9.19.0

2 release files

9.18.0

2 release files

9.17.0

2 release files

9.16.4

2 release files

9.16.2

2 release files

9.16.1

2 release files

9.16.0

2 release files

9.13.7

2 release files

9.13.6

2 release files

9.13.5

2 release files

9.13.4

2 release files

9.13.3

2 release files

9.11.2

2 release files

9.11.1

2 release files

9.11.0

2 release files

9.10.0

2 release files

9.9.0

2 release files

9.8.0

2 release files

9.7.1

2 release files

9.7.0

2 release files

9.6.1

2 release files

9.6.0

2 release files

9.5.0

2 release files

9.4.1

2 release files

9.4.0

2 release files

9.3.0

2 release files

9.2.0

2 release files

9.1.1

2 release files

9.0.0

2 release files

8.0.1

2 release files

8.0.0

2 release files

7.3.2

2 release files

7.3.1

2 release files

7.2.1

2 release files

7.2.0

2 release files

7.1.1

2 release files

7.1.0

2 release files

7.0.2

2 release files

7.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page