Skip to main content

Django app that builds `template` and `elements` components from the Government Digital Services style guide

Project description

It should be easy to make a Django-based service that follows Government Digital Services’ style guide and reference materials. But https://pypi.python.org/pypi/govuk-template is not kept updated and is not readily usable in Django and https://github.com/alphagov/govuk_template cannot be installed directly into a Django project without complex build steps.

This package takes components published by GDS and creates an app in a Django project which can then be used as normal. This process downloads a release from https://github.com/alphagov/govuk_template and the contents of Node.js packages https://www.npmjs.com/package/govuk-elements-sass and https://www.npmjs.com/package/govuk_frontend_toolkit

Usage

  • Setup a Django project using manage.py startproject or other means

  • Install django-govuk-template and add govuk_template_base to INSTALLED_APPS

  • Call manage.py startgovukapp [[app name, e.g. govuk_template]]
    • Add this app to INSTALLED_APPS

    • Ensure that this app is included in source control as the intention is that it’s only rebuilt as needed

    • If an update is needed in the future, delete the app created in previous step and run this command again

  • Add govuk_template_base.context_processors.govuk_template_base to the template context processors

  • Use [[app name, e.g. govuk_template]].html as the template to extend from and overrive the inner_content block

See the demo folder in this repository on GitHub, it is not included in distributions.

Additionally, add django-govuk-forms to your project to output Django forms styled using GOV.UK elements. You can install this package automatically by adding django-govuk-template[forms] to your requirements file.

NB: Until version 1.0, there is likely going to be a lot of variation in the api, so it’s a good idea to pin a specific version.

Development

https://travis-ci.org/ministryofjustice/django-govuk-template.svg?branch=master

Please report bugs and open pull requests on GitHub.

Use python setup.py test to run all tests.

This repository does not need to be updated for every release of GDS’s packages, only breaking changes for overridden components may need fixes.

If any localisable strings change, run python setup.py makemessages compilemessages.

Distribute a new version to PyPi by updating the VERSION tuple in govuk_template_base and run python setup.py compilemessages sdist bdist_wheel upload.

To do

  • Add browser-sync for easier local development

  • Add javascript building options

  • Add additional GOV.UK patterns

  • Improve ServiceSettings model

  • Perhaps improve SCSS building mechanism (e.g. command line fallback) and print styles

  • Perhaps improve app naming or documentation regarding govuk_template_base and govuk_template

  • It would be nice to require as few external tools as possible (e.g. docker/node/ruby) to make building simpler

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-govuk-template-0.6.tar.gz (21.1 kB view details)

Uploaded Source

Built Distribution

django_govuk_template-0.6-py3-none-any.whl (31.4 kB view details)

Uploaded Python 3

File details

Details for the file django-govuk-template-0.6.tar.gz.

File metadata

File hashes

Hashes for django-govuk-template-0.6.tar.gz
Algorithm Hash digest
SHA256 185c3683d96432ff10eabcf6aaa9cef8c01334b475723e6ec980977b3af513f1
MD5 c7f0f5773e282a91f0d0d4561bcd509c
BLAKE2b-256 34f7498a316ffa1f840c03186d1d6f25b6ace6206eebdecb556094ce5e3dc3ae

See more details on using hashes here.

File details

Details for the file django_govuk_template-0.6-py3-none-any.whl.

File metadata

File hashes

Hashes for django_govuk_template-0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 6478436a536b52779966eeae79fecb703fa8dd905b964c03528a5482a9fc97d8
MD5 ec4081b772b52a0c49df15585627d94d
BLAKE2b-256 c49fe64cb85455461d82e5c03b216e745573275f05f3e18b6bd2f678241d2e5a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page