Skip to main content

Arclith

Python 3.13 framework for building microservices with Hexagonal Architecture and Clean Architecture.

Arclith provides reusable domain models, use cases, repositories, adapters, FastAPI/FastMCP/LangGraph bootstrap, configuration, probes, and service wiring.

Canonical Service Layout

Arclith applications should use a namespaced src/<package>/... layout. This keeps imports explicit, avoids top-level package collisions, and matches how the project is built and tested.

src/my_service/
  domain/
  application/
  adapters/
  infrastructure/
config/
tests/
main.py

The current convention is exposed by the framework:

from arclith import canonical_project_layout

layout = canonical_project_layout("my_service")
print(layout.domain)  # src/my_service/domain

Project Links

Installation

pip install arclith

Quickstart

Pour creer un projet concret avec la CLI, lancer API/MCP/probes, puis faire evoluer les adapters:

Optional dependencies

pip install "arclith[mongodb]"
pip install "arclith[duckdb]"
pip install "arclith[mariadb]"
pip install "arclith[fastapi]"
pip install "arclith[mcp]"
pip install "arclith[langgraph]"
pip install "arclith[all]"

arclith[langgraph] installe le socle local pour exposer un agent via LangGraph Studio et LangSmith. Le chemin standard est ensuite:

arclith-cli add-adapter --capability agent --adapter langgraph
arclith-cli add-adapter --capability observability --adapter langsmith
uv run langgraph dev --no-browser --allow-blocking --port 2024

Arclith genere langgraph.json, le point d'entree LangGraph et le cablage Arclith.langgraph(...). Le code specifique du projet reste dans src/<package>/adapters/inbound/langgraph/agent.py.

Development

uv sync
uv run pytest

License

Apache 2.0 — see LICENSE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

arclith-0.12.0.tar.gz (335.2 kB view details)

Uploaded Source

Built Distribution

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

arclith-0.12.0-py3-none-any.whl (82.9 kB view details)

Uploaded Python 3

File details

Details for the file arclith-0.12.0.tar.gz.

File metadata

  • Download URL: arclith-0.12.0.tar.gz
  • Upload date:
  • Size: 335.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for arclith-0.12.0.tar.gz
Algorithm Hash digest
SHA256 3500734d92f228d9e1ec71853318a1ec3d2777021d68380418fcc1af57cc3d60
MD5 6020e31e3bfb12d41fe834d80b477f49
BLAKE2b-256 4dcae5fa2b05b4261dc197ac9dec76f06f2053edd6ff861b820bfc5a62568864

See more details on using hashes here.

File details

Details for the file arclith-0.12.0-py3-none-any.whl.

File metadata

  • Download URL: arclith-0.12.0-py3-none-any.whl
  • Upload date:
  • Size: 82.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.2 {"installer":{"name":"uv","version":"0.12.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for arclith-0.12.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b2a197be54f35e2e404f1f8d58bb3b1017057dae4d2cad322df9e8c64dcb5dc1
MD5 aeda05af0b1ae60b76a4fd656c306fe1
BLAKE2b-256 1e811095a22ad4a333021239d81eca61f968291b33d217793282950cb8cb3b61

See more details on using hashes here.

Release history Release notifications | RSS feed

0.24.0

2 files

0.23.0

2 files

0.22.0

2 files

0.21.0

2 files

0.20.0

2 files

0.19.0

2 files

0.18.0

2 files

0.17.0

2 files

0.16.0

2 files

0.15.0

2 files

0.14.0

2 files

0.13.0

2 files

This release

0.12.0 This release

2 files

0.11.0

2 files

0.10.0

2 files

0.9.0

2 files

0.8.2

2 files

0.8.1

2 files

0.8.0

2 files

0.7.1

2 files

0.7.0

2 files

0.6.1

2 files

0.6.0

2 files

0.5.0

2 files

0.4.0

2 files

0.3.0

2 files

0.2.0

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page