This is a custom implementation of DDD pattern with Python 3. Some other patters are used to ease the clarity of the code, such as Dependency Injection, Command Bus, Data Transformer...
- Python 3
- VirtualEnv
There is a bin/bash
directory at the root folder with all tasks defined:
./bin/bash/init.sh
./bin/bash/run.sh && open http://127.0.0.1:5000
./bin/bash/test.sh
Commands, queries, data transformers... glue between business logic and application infrastructure.
Business logic of the application.
Subscribers to domain root published events.
Domain abstraction, main business logic.
Controller layer framework, configuration, integration of internal services with third party libraries, application control, application utilities...
To make new contributions open a new Pull request in the repository or an issue with the suggestion - a PR is preferred. Make sure that your code has implemented enough tests, is not breaking any existing code, is properly documented and fulfills the code style.
Tests are stored in the test
folder located at the root directory of the project. The name of
each file module should start by test_
, followed by the name of the module that it is testing, or
a meaningful name.
./bin/bash/lint.sh