Metadata-Version: 2.4
Name: docstub
Version: 0.7.0rc0
Summary: Generate Python stub files from docstrings
Maintainer: Lars Grüter
License-Expression: BSD-3-Clause AND PSF-2.0
Project-URL: Source, https://github.com/lagru/docstub
Project-URL: Documentation, https://docstub.readthedocs.io
Keywords: typing,stub files,docstings,numpydoc
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Software Development :: Code Generators
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE.txt
Requires-Dist: numpydoc>=1.7.0
Requires-Dist: click>=8.1.7
Requires-Dist: libcst>=1.3.1
Requires-Dist: lark>=1.1.9
Requires-Dist: black>=24.4.2
Requires-Dist: isort>=5.13.2
Dynamic: license-file

# docstub

> [!NOTE]
> **In early development!**
> Docstub is not feature-complete or thoroughly tested yet.
> Its behavior, configuration or command line interface may change significantly between releases.

docstub is a command-line tool to generate [Python stub files](https://typing.python.org/en/latest/guides/writing_stubs.html).
It extracts necessary type information from [NumPyDoc style](https://numpydoc.readthedocs.io) docstrings.

Many packages in the scientific Python ecosystem already describe expected parameter and return types in their docstrings.
Docstub aims to take advantage of these and help with the adoption of type annotations.
It does so by supporting widely used readable conventions such as `array of dtype` or `iterable of int(s)` which are translated into valid type annotations.


## Getting started & quick links

- [Documentation](https://docstub.readthedocs.io/) (see also [docs/](docs/))

Specific guides:

- [Installation (stable)](https://docstub.readthedocs.io/stable/installation.html)
- [Introduction (stable)](https://docstub.readthedocs.io/stable/introduction.html)
- [Contributing (latest)](https://docstub.readthedocs.io/latest/development/contributing.html)

Our [release notes (latest)](https://docstub.readthedocs.io/latest/release_notes/index.html) are in [docs/release_notes/](docs/release_notes).

Our project follows [Scientific Python's Code of Conduct](https://scientific-python.org/code_of_conduct/).


## Acknowledgements

Thanks to [docs2stubs](https://github.com/gramster/docs2stubs) by which this
project was heavily inspired and influenced.

And thanks to CZI for supporting this work with an [EOSS grant](https://chanzuckerberg.com/eoss/proposals/from-library-to-protocol-scikit-image-as-an-api-reference/).
