Codync
免费开源的 1:1 Grok Bot 与 Muse 替代方案。可在 iPhone、Mac 或 Linux 桌面上将 Claude 代码、Codex、Cursor 以及 40 多个编码代理作为持久机器人使用。支持群组聊天、线程、应用。
AI 翻译
制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗DDD and Hexagonal Architecture building blocks for Python.
| Layer | Package | Components |
|---|---|---|
| Domain | seedwork.domain | Entity, AggregateRoot, ValueObject, DomainEvent, DomainEventRecord, DomainError, Repository, UnitOfWork |
| Application | seedwork.application | Command, Query[TResult], CommandHandler, QueryHandler, CommandBus, QueryBus, Result, DomainEventBusPublisher, DomainEventBusSubscriber, DomainEventBus, DomainEventHandler, BaseIntegrationEvent[TPayload], IntegrationEvent[TPayload], IntegrationEventPublisher, IntegrationEventHandler, BackgroundTask[TPayload], TaskScheduler |
| Infrastructure | seedwork.infrastructure | RegistryCommandBus, RegistryQueryBus, TransactionalCommandBus, DomainEventCoordinatorCommandBus, CommandBusBuilder, QueryBusBuilder, DeferredDomainEventBus, DomainEventPublishingRepository, InMemoryRepository |
All components are also re-exported from the top-level seedwork package.
pip install python-seedwork
Requires Python 3.12+. Ships a py.typed marker (PEP 561) — mypy and pyright pick up the inline types automatically.
Comprehensive guides are available in the docs/ directory:
A complete Bank Account example demonstrates all patterns end-to-end.
Python 3.12+, uv
git clone https://github.com/aseguragonzalez/python-seedwork.git
cd python-seedwork
make install
| Command | Description |
|---|---|
make check | Lint, typecheck, and tests (what CI runs) |
make lint | Run ruff linter |
make format | Format and auto-fix with ruff |
make typecheck | Run pyright |
make test | Run tests with coverage (90% gate) |
make test-no-cov | Run tests without coverage |
make clean | Remove build artifacts and caches |
This project follows the Conventional Commits specification. The commit-msg pre-commit hook enforces the format; python-semantic-release derives versions and the changelog from commit prefixes automatically.
This package draws on the following literature and on the experience of building solid, scalable, and maintainable systems in different stacks (PHP, C#, Python, TypeScript).