Skip to main content


The @project decorator makes it convenient to create isolated Metaflow namespaces and corresponding proudction deployments. When multiple flows use the same project name, they can fetch data across them safely using the Client API, without interference from other users running the same flows.

By itself, @project doesn't change the behavior besides exposing new attributes in the current object. It alters the flow names when they are deployed in production, allowing multiple parallel deployments.

For more information, see Coordinating Larger Metaflow Projects.



from metaflow import project

Specifies what flows belong to the same project.

A project-specific namespace is created for all flows that use the same @project(name).


name: str

Project name. Make sure that the name is unique amongst all projects that use the same production scheduler. The name may contain only lowercase alphanumeric characters and underscores.