Skip to main content

A system assembly framework based on Integrant

Project description

While IoC and dependency injection aren’t as much of a thing in Python as they are in many compiled languages, that doesn’t mean they don’t have their place in decomposition of a complex architecture and assembly of systems; there’s something very nice about completely separated modules that communicate based on shared abstractions which are then assembled by a separate piece of code into running systems.

But despite the many microframeworks for dependency injection that I’ve seen for Python, I haven’t seen any that seem as elegant as the Integrant microframework enjoyed by Clojurists. This is an effort to remedy that, but as I haven’t loads of time to invest in it, it’s a pale shadow of the original.

Still, shadows have power. It can already do the initialization portion of a system, although items like prep, halt, suspend, etc remain, as do derived keys and refsets. But one thing at a time.

As of the 0.1.0 prerelease, all that works is the basic assembly of a system from a configuration (in Python, JSON, or TOML) and it’s surprising how effective that actually can be. Unfortunately error messages are lightly cryptic and documentation is nonexistent, but more will be coming shortly.

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

pyntegrant-0.2.1.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

pyntegrant-0.2.1-py3-none-any.whl (9.0 kB view details)

Uploaded Python 3

File details

Details for the file pyntegrant-0.2.1.tar.gz.

File metadata

  • Download URL: pyntegrant-0.2.1.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.1 CPython/3.10.9 Linux/6.1.9-arch1-1

File hashes

Hashes for pyntegrant-0.2.1.tar.gz
Algorithm Hash digest
SHA256 2d008f8696e76858db333152fd76bb88274b088ada3d29fffd28fd050973369b
MD5 5b666f7e0731b78f9463272e36798305
BLAKE2b-256 b46805ebd8ccaaf84ed68aaacfc11c92f905ad4ad6b420159f247259573101f9

See more details on using hashes here.

File details

Details for the file pyntegrant-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: pyntegrant-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 9.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.1 CPython/3.10.9 Linux/6.1.9-arch1-1

File hashes

Hashes for pyntegrant-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 269ccde813a9ff39b0f91547c588eed62f597fc81909d4b588ef63e5b2838388
MD5 5b29ff26eaaa4fb0175171c1ea13e78e
BLAKE2b-256 e5d979e778d292af00c354bf23125c9bd2c4f7eaa21ce430be89100f463e6f72

See more details on using hashes here.

Supported by

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