Skip to main content

A Design System for Django

Project description

dj-design-system

CI PyPI version Python versions Django License: MIT

DjDS is a Django-native approach to writing front end components that are exposed as templatetags. It comes with an auto-generated, customisable, live interactive gallery of your UI components that lives alongside your Django project.

Components are recognisably Django elements; they look and work like Models or Forms. The gallery auto-discovers them, renders live previews in sandboxed iframes, generates templatetag usage examples, and builds a searchable navigation tree — all from your existing code and docstrings.

Browse the demo →

Read the docs →.

Quick start

pip install dj-design-system

Then follow the quickstart guide to register your first component.

Supported versions

Python Django
3.13 5.2 (LTS)
3.14 6.0
latest

Documentation

Full documentation is available at fukalite.github.io/dj-design-system/.

To browse locally:

just docs-serve
Document Contents
Quick start Installation and first component
Components Defining components and parameters
Registry Auto-discovery and the component registry
Gallery Configuring and customising the gallery
Template tags Using components in templates
API reference Auto-generated class and parameter docs

A static snapshot of the component gallery is browseable at fukalite.github.io/dj-design-system/demo/ (HTMX interactions disabled; run just demo for the full live experience).

Contributing

See CONTRIBUTING.md for how to set up a dev environment, run tests, and submit a pull request.

Code of conduct

This project follows the Contributor Covenant. Please read CODE_OF_CONDUCT.md before contributing.

Issues and feature requests

Please open an issue on GitHub. Use the bug report template for defects and the feature request template for new ideas.

Security

To report a vulnerability privately, see SECURITY.md.

Licence

MIT

With thanks to the UK Department for Business and Trade, where this was originally developed.

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

dj_design_system-0.4.0.tar.gz (314.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dj_design_system-0.4.0-py3-none-any.whl (107.7 kB view details)

Uploaded Python 3

File details

Details for the file dj_design_system-0.4.0.tar.gz.

File metadata

  • Download URL: dj_design_system-0.4.0.tar.gz
  • Upload date:
  • Size: 314.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for dj_design_system-0.4.0.tar.gz
Algorithm Hash digest
SHA256 83f3224f39347caf8638c9c87046af6c564cb41dfa88dd6ff12e2942bcd109de
MD5 53610ab8211a72798789e319ecea0a3e
BLAKE2b-256 7818ab290cb876cdcf6ad2b913b027a359ea3d7c25f21be6ba60866481456fef

See more details on using hashes here.

File details

Details for the file dj_design_system-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: dj_design_system-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 107.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for dj_design_system-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 10a432b2d931f4afc89571dbc1fd6088f0a063a8b5fe6bc80a6e87ccab00c848
MD5 9a05de520bfd5b9092f563b28b7ce0e1
BLAKE2b-256 81c544168eb252840f77973a262a5b74ab6268500fc287c9e7d40b58d04757dc

See more details on using hashes here.

Supported by

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