Skip to main content

plone.patternslib

An add-on to make Patternslib available to Plone 6.

Compatibility

This package is compatible with Plone 6.

In version 9.10.6 we switched to native namespaces, which are supported by Plone 6.2+.

For Plone 6.0 and 6.1 you need to additionally install horse-with-no-namespace.

References

Features

Plone and Mockup depend on Patternslib and it's Patterns registry infrastructure since quite some time already. Since Plone 6 there are also some core Patternslib patterns exposed in Plone, like pat-inject, pat-validation, pat-date-picker and some more.

This package completes that and makes all Patternslib patterns available in Plone. This includes pat-auto-submit, pat-auto-suggest, pat-carousel, pat-gallery, the fullcalendar integration pat-calendar, the wysiwyg integration pat-tiptap, pat-upload and more.

Please note - pat-leaflet is yet not included as it is not part of the Patternslib distribution. There are plans to make it available in a separate package.

Versioning scheme

The version number of plone.patternslib directly follows the Patternslib version numbers and can include a plone.patternlsib specific PATCH level.

This is the scheme:

PA ... Patternslib version PL ... plone.patternslib version

f"${PA_MAJOR}.${PA_MINOR}.${PA_PATCH}.${PL_PATCH}${PA_PRE_RELEASE}.${PL_DEV_VERSION}"

Possible version numbers are:

  • 9.9.16 # Patternslib 9.9.16
  • 9.9.16.1 # Patternslib 9.9.16 with a plone.patternslib specific patch
  • 9.10.0a0 # Patternslib 9.10.0-alpha.0
  • 9.10.1b2 # Patternslib 9.10.1-beta.2
  • 9.10.1b2.dev0 # Development version of the above.
  • 9.10.1.1b2 # Patternslib 9.10.1-beta.2 with a plone.patternslib specific patch
  • 9.10.1 # Patternslib 9.10.1

Our update script updates the setup.py version from the Patternslib version number, which is a semver compatible version specifier. When releasing, the zest.releaser scripts replaces that to a Python compatible version scheme.

Updating Patternslib

Use a branch for updating Patternslib.

To update Patternslib to the latest released version run:

make update-patterns

or to update Patternslib to an arbitrary version - e.g. a pre-release:

PATTERNSLIB_VERSION=9.10.1-beta.2 make update-patterns

This does the following:

  • Downloads the latest or a specified Patternslib release from GitHub.
  • Copies the Patternslib bundle files to the resource directory at src/plone/patternslib/static.
  • Updates the version number in the setup.py file.
  • Generates a news file.
  • Commits the changes.

You can then make further changes or push your branch and create a pull request. Or update the version number for a plone.patternslib specific patch level.

Implementation

This package includes the Patternslib bundle in a resource directory.

The default profile installs the ++resource++patternslib/remote.min.js bundle as a Module Federation remote bundle. The module federation main bundle in Plone is the plone bundle. You can also use the ++resource++patternslib/bundle.min.js directly, but then you need to update the plone bundle to use remote.min.js instead of bundle.min.js. You can find more info on module federation here:

https://github.com/Patternslib/Patterns/blob/master/docs/developer/module-federation.md

Limitations

Some of the Patternslib patterns have the same name like patterns in Mockup. They are still included but not registered. The Patterns registry does not register patterns of the same name twice.

Examples

There are example browser views for four patterns in the browser directory. If all went well, you can test the following patterns by calling their browser view examples on your plone site:

  • @@pat-depends
  • @@pat-inject
  • @@pat-masonry
  • @@pat-switch

Development

To update Patternslib to the latest released version run:

make update-patterns

or to update Patternslib to an arbitrary version - e.g. a pre-release:

PATTERNSLIB_VERSION=9.10.1-beta.1 make update-patterns

Contribute

Support

If you are having issues, please put them into the issue tracker.

License

The project is licensed under the GPLv2.

Changelog

9.11.1 (2026-09-19)

New features

  • Update Patternslib to 9.11.1.

9.11.0.1 (2026-09-17)

Bug fixes

  • Don't override but extend the Patterns blacklist.

    When initializing the Patterns blacklist, don't override but extend it. This preserves the blacklist, if it was already defined before.

9.11.0 (2026-09-16)

New features

  • Update Patternslib to 9.11.0.

9.10.7 (2026-09-16)

New features

  • Update Patternslib to 9.10.7.

Internal

  • Update configuration files @plone

9.10.6 (2026-06-08)

Breaking changes

  • Replace pkg_resources namespace with PEP 420 native namespace. Native namespaces are supported by Plone 6.2+. For Plone 6.0 and 6.1 you need to additionally install horse-with-no-namespace. #3928

New features

  • Update Patternslib to 9.10.6.

Internal

  • Update configuration files @plone

9.10.5 (2026-06-06)

New features:

  • Update Patternslib to 9.10.5.

9.10.4 (2026-01-14)

New features:

  • Update Patternslib to 9.10.4.

9.10.4.1a0 (2025-09-10)

New features:

  • Update Patternslib to 9.10.4-alpha.0.

9.10.4a0 (2025-09-10)

New features:

  • Update Patternslib to 9.10.4-alpha.0.

9.10.3.1 (2025-09-04)

Bug fixes:

  • Blacklist unwanted Patterns.

    Add a patternslib-preinit.js resource as bundle in the resource registry. Currently this script blacklists any unwanted Patternslib Patterns. Most prominent this is "pat-legend" which would transform any "legend" tags to "p" tags and break form-tabbing with pat-autotoc. (patternslib-preinit)

9.10.3 (2025-07-04)

New features:

  • Update Patternslib to 9.10.3.

9.10.2 (2025-07-01)

New features:

  • Update Patternslib to 9.10.2.

9.10.1b3 (2025-04-07)

New features:

  • Update Patternslib to 9.10.1-beta.3.

Bug fixes:

  • Do not create a file extension when creating towncrier news fragments to comply with the towncrier configuration. [thet]

9.9.16 (2025-02-17)

No significant changes.

9.9.16.0a1 (2025-02-03)

Breaking changes:

  • Upgrade for Plone 6 and Python >= 3.9 only. [ale, thet]

New features:

  • Update Patternslib to 9.9.16.

Internal:

  • Update configuration files. [plone devs]

1.3.0 (2023-02-02)

1.2.1 (2020-11-23)

  • Bugfix: Register upgrade step for the correct profile (frapell)

1.2.0 (2020-08-07)

  • Register pat-datetime-picker in the resource registry. (thet)
  • Restructure upgrades to follow bobtemplates.plone recommendations. (thet)

1.1.1 (2020-07-10)

  • Do not autoinclude ZCML (this was not needed here). (jensens)
  • Fix dependency chain, depend on Products.CMFPlone in setup.py. (jensens)
  • Upgrade to pat-leaflet 1.4.0. (thet)

1.1.0 (2019-04-11)

  • Upgrade pat-leaflet to 1.3.0. (thet)
  • Remove 2nd CSS resource from Leaflet Markercluster as Plone doesn't compile it properly. (thet)
  • Register pat-date-picker. (thet)
  • Update dependencies, deped on Patterns 2.1.x. (thet)
  • Update to latest Patterns. (thet)
  • Remove registry initialization in bundles. (cekk)
  • Declare support for python 3. (vincero)

1.0 (2017-02-28)

  • Git-un-exclude dist directory within the static folder. (thet)
  • Fix font-awesome web font path. (thet)
  • Fix Leaflet icon integration. (thet)
  • Register resources with their uncompressed files, wherever they are available. This helps debugging and the resource registry itself can handle compression on it's own. (thet)
  • Upgrade Patternslib to latest version. (thet)
  • Better pat-gallery integration. (thet)
  • Add pat-leaflet resources. (thet)
  • Use bower to manage resources instead of Makefile script. (thet)
  • Remove browserlayer and add upgrade step for removal from component registry. (thet)
  • Cleanup. (thet)

0.2 (2016-04-27)

  • Polyfill removeDuplicateObjects so that we can use version 2.0.13 of Patternslib with Plone/Mockup which still uses Patternslib 2.0.11.

0.1 (2016-04-27)

  • Initial release.

Release files for plone.patternslib 9.11.1

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

Source distribution (sdist)

Source distribution for plone.patternslib 9.11.1
File Size Uploaded
plone_patternslib-9.11.1.tar.gz 3.0 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for plone.patternslib 9.11.1
File Interpreter ABI Platform
plone_patternslib-9.11.1-py3-none-any.whl Python 3 none any Details

Total release size: 6.6 MB

Release files / plone_patternslib-9.11.1.tar.gz

Download URL plone_patternslib-9.11.1.tar.gz
Size 3.0 MB
Tags Source
SHA-256 checksum
How to use checksums
18a5914fb800840b86f6604278db1c35abc704c171423365b3871a01ae3d0403
BLAKE2b-256 checksum
How to use checksums
f38ae487ce5984ea3534b5a4d32f77c01965b360d896d8ec90fb2a17a037bb79
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / plone_patternslib-9.11.1-py3-none-any.whl

Download URL plone_patternslib-9.11.1-py3-none-any.whl
Size 3.6 MB
Tags Python 3
SHA-256 checksum
How to use checksums
4f3aaa345bb7af89ae1d6961387f3e9b9c7ebadbef0e43b258374c2c4aabab5a
BLAKE2b-256 checksum
How to use checksums
9b9ace43e202cf6ee9725a85e9abd5dbe962979927fe3b540d5040296a28bad6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7
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