Skip to main content

Domain-Driven Design and Hexagonal Architecture for backend services

Project description

Forze

PyPI Python OpenSSF Scorecard CodeFactor codecov Socket Badge

Forze is an infrastructure toolkit for building backend services with Domain-Driven Design and Hexagonal Architecture.

It provides a set of reusable primitives, contracts, and structural patterns that help organize backend applications into clear, maintainable layers.

Design Goals

Forze aims to support backend systems that are:

  • Layered — clear separation between domain, application, and infrastructure
  • Explicit — well-defined ports, adapters, and boundaries
  • Testable — components can be tested in isolation
  • Composable — infrastructure pieces can be replaced or extended
  • Framework-agnostic — the core does not depend on a specific framework

The library focuses on providing structure and contracts, not a full-stack framework.

Quick Start

Install the core package:

uv add forze

Install with optional integrations:

uv add 'forze[fastapi,postgres,socketio]'

Authentication extras:

# First-party authn (Argon2 / PyJWT / email-validator)
uv add 'forze[authn]'

# Generic OIDC verifier (RS256/ES256/HS256, JWKS) for external IdPs
uv add 'forze[oidc]'

Documentation

Full documentation is available at https://morzecrew.github.io/forze/.

Agent Skills

Forze ships with AI agent skills for applications that use Forze as a dependency. Install them in your service repo so assistants follow correct wiring, handlers, and integration patterns:

# Install all skills
npx skills add morzecrew/forze

# Install a specific skill
npx skills add morzecrew/forze@forze-wiring

Skills follow the Agent Skills format. See skills/README.md for more details.

Versioning

Forze follows Semantic Versioning (SemVer). Pre-release builds may include experimental APIs and are not guaranteed to be stable.

Contributing

Contributions, issues, and feature requests are welcome. See CONTRIBUTING.md for details.

Security

Please report security vulnerabilities privately as described in SECURITY.md.

License

Forze is licensed under the MIT License - see LICENSE for details.

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

forze-0.4.1.tar.gz (2.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

forze-0.4.1-py3-none-any.whl (1.8 MB view details)

Uploaded Python 3

File details

Details for the file forze-0.4.1.tar.gz.

File metadata

  • Download URL: forze-0.4.1.tar.gz
  • Upload date:
  • Size: 2.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for forze-0.4.1.tar.gz
Algorithm Hash digest
SHA256 ee48e577bae86a052b97950578307b3ae21563b0501df62260739555be28db22
MD5 5fbb285a2c8d89f49a8e6f060a5d0c12
BLAKE2b-256 1ae7c2007bd4c366c4537b84ec1b36cb41d71e58d5b18c16ad988b7ca82c0cd0

See more details on using hashes here.

Provenance

The following attestation bundles were made for forze-0.4.1.tar.gz:

Publisher: release.yaml on morzecrew/forze

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file forze-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: forze-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for forze-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b7e6c9de5b97be55c88c03c25e3231ab464babe27ee336a21e18878c35ceada8
MD5 20dce48cb9754c17175ae8c1f1f1918b
BLAKE2b-256 42b3316f2e0bf66452e61082d264dc1328ad908b83b3b12f9641c2e9ec90e46b

See more details on using hashes here.

Provenance

The following attestation bundles were made for forze-0.4.1-py3-none-any.whl:

Publisher: release.yaml on morzecrew/forze

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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