kedro-org / kedro

Kedro is a toolbox for production-ready data science. It uses software engineering best practices to help you create data engineering and data science pipelines that are reproducible, maintainable, and modular.
https://kedro.org
Apache License 2.0
9.91k stars 900 forks source link

Improve docs around creating plugins #2685

Closed astrojuanlu closed 1 year ago

astrojuanlu commented 1 year ago

Description

We have these docs https://docs.kedro.org/en/stable/extend_kedro/plugins.html#example-of-a-simple-plugin

which briefly mentions setup.py but assumes that the reader already knows how to create a Python package, which is a huge assumption I'd say.

Context

Why is this change important to you? How would you use it? How can it benefit other users?

Possible Implementation

There are several ways to modernize these docs. But even if we don't do anything else, at the very least we should replace setup.py with pyproject.toml.

Apart from that, we should add all the steps on how to create a distributable Python project, either with

a. something like flit init (or its hatch/rye/{whatever} equivalent), or b. providing a template of our own and then instructing users to do copier gh:kedro-org/kedro-plugin-template, or c. even having a kedro plugin init command what does the right thing.

noklam commented 1 year ago

Backlog Grooming: We decide to keep this as a documentation effort.

noklam commented 1 year ago

may be duplicate #1539, Can we move this to milestone https://github.com/kedro-org/kedro/milestone/50 here?

astrojuanlu commented 1 year ago

Indeed, feel free to close this one