<@ULVA73B9P> show the example structure of Prefect...
# ask-marvin
i
@Marvin show the example structure of Prefect project.
m
Here's an example structure for a Prefect project, which is typically organized to facilitate writing, testing, and deploying Prefect flows: 1.
pyproject.toml
: This file manages project dependencies and configurations such as testing and linting. 2.
flows/
directory
: This is where you store your Prefect flow files. 3.
prefect.yaml
: A configuration file for storing deployment definitions. 4.
src/prefect_pack/
package
: This directory holds flow steps and utility functions. 5. Test Suite: A skeleton test suite using
pytest
and fixtures for setting up a temporary Prefect environment. For more details, you can refer to the Prefect Pack GitHub repository, which serves as a template for bootstrapping a new Prefect project.
i
@Marvin is it good idea to describe integrations as classes? If so, where should I put them?
n
good idea to describe integrations as classes
what type of integrations do you mean? do you mean blocks?
i
@Nate no. more like API Clients, maybe Google Sheets Writer, something more custom
n
using the template repo above as a reference
src/prefect_pack
is the module where I would define your own reusable things in the template as is, that's just one pydantic util and an extra step for my
prefect.yaml
but you could easily do something like
Copy code
» tree --gitignore src/your_module
src/your_module
├── __init__.py
├── _version.py
├── steps
│   └── your_custom_steps.py
└── gsheets.py
and then later after
uv pip install .
Copy code
from your_module.gsheets import YourClass
i.e. just like a normal python package
🙌 1
i
Thanks