A Python toolkit for applications driven by the Clean Architecture
Project description
python-clean-architecture
python-clean-architecture is a Python library aiming to equip you with a set of patterns to come closer to The Clean Architecture and a toolbox of adapters for integration with popular frameworks. Using them can make your code more focused on the knowledge you are trying to embody with your application and separation from technical details. A nice side-effects of this approach is an ease of plugging your application to a different variants of your infrastructure and lightweight testing the key fragments of your codebase.
Development Status
The library is still in a planning phase, so expect much refactorization and many changes to its API (Stage 2 - Pre-Alpha Status).
Inspirations
- Clean design patterns of application by Robert "Uncle Bob" Martin (Architecture the Lost Years)
- Domain Driven Development by Eric Evans & Martin Fowler
Tiers of the architecture
- Data-level logic: data description objects, schemas, serialization, predicates, formulae.
- Domain-specific logic: bounded contexts (aka domains), entities, value objects, aggregates, repositories, policies, factories, domain services.
- Application-specific logic: use-cases, application services, gateways, CQRS stacks, sagas. Task-, event- and data-driven applications, commands.
Integrations:
One of the main goal of this library is to provide integration with adequate integrations:
- TinyDb as DAO
- more to come soon...
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
Built Distribution
Hashes for python-clean-architecture-0.0.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | e3ad1ac4a4641aa8d65773ed867e0d79a35510ff8b2b1131501ce3461ce7d396 |
|
MD5 | caf64df45dddabb463b31bd00c8a87a3 |
|
BLAKE2b-256 | 187a118df5eb6e648f150b1b14f2d3a6bec4a387434e888033dd849939a9af71 |
Hashes for python_clean_architecture-0.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 14ec5ebce9ce4d83452e5a3193b0d2169699a48a17d11c98355df0126bbe7f2d |
|
MD5 | 5ff3a1b15f255cb7072e0d5a064e4770 |
|
BLAKE2b-256 | 2670f10456c2012b2fff3b1e3e131c89da27375c7459b3630bc954631247fd06 |