skillfed

poetry-multiproject-plugin

A Poetry plugin that makes it possible to use relative package includes.

poetry-multiproject-plugin v1.8.4 84.5K downloads/30d#13,991 on PyPI189
Permissive license MIT AGING released

What it is and what it does

Poetry Multiproject Plugin extends Poetry with two new commands: `build-project` and `check-project`. The `build-project` command solves a core limitation of Poetry—it normally forbids package includes from outside the project root. This plugin copies the project and its relative includes into a temporary folder, rewrites the pyproject.toml, runs `poetry build`, and returns the built wheel and sdist. This enables monorepos to share code across multiple services or apps without duplicating it. The `check-project` command performs a similar workflow but runs `poetry install` and then `mypy` to validate that all dependencies are properly declared and the code type-checks correctly.

The plugin uses AST parsing to rewrite imports when building with a custom namespace (via `--with-top-namespace`), which is useful for libraries that need to avoid namespace collisions when multiple libraries from the same monorepo are installed together. It supports Python 3.8 through 3.13 and integrates directly into Poetry's command interface.

Use it for:

  • Build microservices in a monorepo that share utility packages without duplicating code across project folders.
  • Validate that a project's dependencies are correctly declared by running mypy on the combined project and its relative includes.
  • Organize Python projects according to the Polylith Architecture, where shared components live in a separate folder structure.
  • Build multiple libraries from the same monorepo with different top namespaces to avoid import collisions when installed together.
  • Set up a monorepo with a shared folder of namespaced packages that multiple apps can selectively include and build.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

A Poetry plugin that enables building and type-checking projects with relative package includes, useful for monorepos where code is shared across multiple projects.

Yes, if you maintain a monorepo and need to share code across projects without duplicating it. The plugin fills a genuine gap in Poetry's design. However, the aging maintenance status (last release 377 days ago) means you should verify compatibility with your current Poetry version before relying on it for production builds. No known security vulnerabilities.

Install

poetry-multiproject-plugin on PyPI

pip

pip install poetry-multiproject-plugin

uv

uv add poetry-multiproject-plugin

poetry

poetry add poetry-multiproject-plugin

Installing poetry-multiproject-plugin

Before you install

Low friction to install via `poetry self add`. The package is aging (last release 377 days ago) but the repository is active and not archived, with 189 stars. Depends on mypy, poetry, and tomlkit—all stable, widely-used libraries.

License in practice

MIT license is permissive; you can use this plugin freely in commercial and open-source projects with minimal restrictions.

Quickstart

poetry self add poetry-multiproject-plugin

# Then in a project with relative includes in pyproject.toml:
poetry build-project

# Or check dependencies with mypy:
poetry check-project

Requires Poetry to be installed and a pyproject.toml file in the project root. The `--with-top-namespace` flag for library builds requires Python 3.9 or later.

Verify before relying

  • Whether the plugin works reliably with Poetry versions released after the last plugin update (377 days ago).
  • Performance impact when building large monorepos with many relative includes.

Package facts

License MIT (permissive)
Python support supports the current Python release (<4.0,>=3.8)
Install friction low — pure-Python wheel
Runtime dependencies 3 — mypy, poetry, tomlkit
Maintenance aging — 377 days since the last release
Last repo commit
First released
Downloads 84,520/month — #13,991 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: poetry_multiproject_plugin-1.8.4-py3-none-any.whl

License :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9

Tags

poetry monorepo pluginrelative package includes poetryshared code monorepopoetry build-project commandpoetry check-project mypypoetry namespace packagesmonorepo code sharing
monorepopoetry-plugintype-checking

More Build Tools packages