Skip to main content

A modern Python library of reusable software design patterns.

Project description

pattern_kit

PyPI - Version No dependencies CI Documentation PyPI - Downloads

A modern Python library of reusable software design patterns.
Your blueprint for better Python architecture.


pattern_kit is a developer-friendly Python library offering clean, idiomatic implementations of common software design patterns. It focuses on real-world usability, pragmatic APIs, and simple integration into your projects.

While many examples exist online, pattern_kit is designed as a pip-installable, production-grade package with a consistent structure and proper documentation - making design patterns approachable and usable in everyday codebases.


Features

  • Clean, idiomatic Python implementations
  • Supports both synchronous and asynchronous designs
  • Type-annotated and easy to extend
  • Ready-to-use patterns for real-world projects
  • Extensive documentation with examples
  • Zero dependencies - pure Python, clean and portable

Installation

pip install pattern_kit

Documentation

Full usage examples and pattern guides are available in the official documentation

Quick Example

from pattern_kit import Observable, Observer

class MyObserver(Observer):
    def notify(self, event, data=None):
        print(f"Received: {event} - {data}")

obs = Observable()
observer = MyObserver()

obs += observer
obs.notify("on_data", {"price": 42})

Who is this for?

Python developers who want to structure their codebase better and apply solid, proven software architecture principles.

Contributing

Contributions are welcome! Feel free to open issues, suggest improvements, or submit pull requests.

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

pattern_kit-1.1.0.tar.gz (8.8 kB view details)

Uploaded Source

Built Distribution

pattern_kit-1.1.0-py3-none-any.whl (10.2 kB view details)

Uploaded Python 3

File details

Details for the file pattern_kit-1.1.0.tar.gz.

File metadata

  • Download URL: pattern_kit-1.1.0.tar.gz
  • Upload date:
  • Size: 8.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for pattern_kit-1.1.0.tar.gz
Algorithm Hash digest
SHA256 11b51ddaf7608e078cccde07b4d5d6bd66c511edc2f3a0f1debc240c0e9360cd
MD5 9ab74519d1d23f5c10e5520b6c258f5a
BLAKE2b-256 b3baa75fb3df4362d35b40c36b56ea182a620a15a046881f047f92fc1eab5bd4

See more details on using hashes here.

File details

Details for the file pattern_kit-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: pattern_kit-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 10.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for pattern_kit-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1f0b3fbc75873f286291afa23ed7712b733edcb6e944d3c308da317a212af8e9
MD5 0839461c3c23302a034c8869c4632857
BLAKE2b-256 9612e84a518c9e405b6184a5efc7586eebfb80de8399a339bee8088e41a4c5f7

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