Skip to main content

A module for Django that allows to build pattern libraries for your projects.

Project description

django-pattern-library

PyPI PyPI downloads Build status

UI pattern libraries for Django templates. Try our online demo.

Screenshot of the pattern library UI, with navigation, pattern rendering, and configuration

Features

This package automates the maintenance of UI pattern libraries or styleguides for Django projects, and allows developers to experiment with Django templates without having to create Django views and models.

  • Create reusable patterns by creating Django templates files as usual.
  • All patterns automatically show up in the pattern library’s interface.
  • Define data as YAML files for the templates to render with the relevant Django context.
  • Override Django Templates tags as needed to mock the template’s dependencies.
  • Document your patterns with Markdown.
  • Experimental: support for Jinja templates.

Why you need this

Pattern libraries will change your workflow for the better:

  • They help separate concerns, both in code, and between members of a development team.
  • If needed, they make it possible for UI development to happen before models and views are created.
  • They encourage code reuse – defining independent UI components, that can be reused across apps, or ported to other projects.
  • It makes it much simpler to test UI components – no need to figure out where they’re used across a site or app.

Learn more by watching our presentation – Reusable UI components: A journey from React to Wagtail.

Online demo

The pattern library is dependent on Django for rendering – but also supports exporting as a static site if needed. Try out our online demo:

Documentation

Documentation is available at torchbox.github.io/django-pattern-library, with source files in the docs directory.

Contributing

See anything you like in here? Anything missing? We welcome all support, whether on bug reports, feature requests, code, design, reviews, tests, documentation, and more. Please have a look at our contribution guidelines.

If you want to set up the project on your own computer, the contribution guidelines also contain all of the setup commands.

Nightly builds

To try out the latest features before a release, we also create builds from every commit to main. Note we make no guarantee as to the quality of those pre-releases, and the pre-releases are overwritten on every build so shouldn’t be relied on for reproducible builds. Download the latest django_pattern_library-0.0.0.dev0-py3-none-any.whl.

Credits

View the full list of contributors. BSD licensed.

Project logo from FxEmoji. Documentation website built with MkDocs, and hosted in GitHub Pages.

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_pattern_library-1.5.0.tar.gz (31.2 kB view details)

Uploaded Source

Built Distribution

django_pattern_library-1.5.0-py3-none-any.whl (34.6 kB view details)

Uploaded Python 3

File details

Details for the file django_pattern_library-1.5.0.tar.gz.

File metadata

  • Download URL: django_pattern_library-1.5.0.tar.gz
  • Upload date:
  • Size: 31.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.2 CPython/3.13.2 Darwin/24.3.0

File hashes

Hashes for django_pattern_library-1.5.0.tar.gz
Algorithm Hash digest
SHA256 ce84a2d8c7e35eda58d86714d76da7850250db7fdde07160669739585b7ea7f3
MD5 c5c4e6ebb89e4ab56384fd5c60fdf904
BLAKE2b-256 272feac9fb7ed72462174558936a19de6f9f7763c3460be7ba3c47f0231c5059

See more details on using hashes here.

File details

Details for the file django_pattern_library-1.5.0-py3-none-any.whl.

File metadata

File hashes

Hashes for django_pattern_library-1.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7d133eca05b06bc7097f5709d967d503a09e0dc6aa37aea68dc29dc934400b01
MD5 fab5ba523e0d9c90321aa08114700d51
BLAKE2b-256 80872000cb4112f342f043aabe24d6e23a2d79255a074f11735d95ee6ec831e6

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