Skip to main content

Domain-Driven Design and Hexagonal Architecture for backend services

Project description

Forze

PyPI Python OpenSSF Scorecard CodeFactor codecov

Forze is a lightweight 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]'

Documentation

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

Agent Skills

Forze ships with AI agent skills that help assistants understand the framework's architecture, patterns, and conventions. Install them to improve code generation and refactoring when working with Forze.

Skills follow the Agent Skills format.

Installation

# Install all skills
npx skills add morzecrew/forze

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

Usage

Skills are automatically available once installed. The agent will use them when relevant tasks are detected.

Available Skills

Name Description
forze-framework-usage Write code that uses the framework correctly according to the core concepts.
forze-domain-aggregates Define domain models, document aggregates, and specifications.
forze-wiring Wire runtime, dependencies, lifecycle, usecase composition, and interface layer.

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.1.14.tar.gz (460.0 kB view details)

Uploaded Source

Built Distribution

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

forze-0.1.14-py3-none-any.whl (330.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: forze-0.1.14.tar.gz
  • Upload date:
  • Size: 460.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for forze-0.1.14.tar.gz
Algorithm Hash digest
SHA256 d8d2653f3f3ebb9580fd375622335ebfac3347a61639386f0e077957cf1f145b
MD5 4fa070ed1bbbbb09f5fb7965e894b39b
BLAKE2b-256 d11a663544e5626e2fd5439bb52bf1c850ce37991d05246108dad1c805f1869c

See more details on using hashes here.

Provenance

The following attestation bundles were made for forze-0.1.14.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.1.14-py3-none-any.whl.

File metadata

  • Download URL: forze-0.1.14-py3-none-any.whl
  • Upload date:
  • Size: 330.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for forze-0.1.14-py3-none-any.whl
Algorithm Hash digest
SHA256 fe5528ca849223900d9c323c065510371ae1d63fbd0d82c8d201af78092d47cb
MD5 707041e3f046fcfee9872785a4834318
BLAKE2b-256 65477da28c5a59a0e81ae97de079addaef5e3f31fd260e048d35f81e3cdf5672

See more details on using hashes here.

Provenance

The following attestation bundles were made for forze-0.1.14-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