Metadata-Version: 2.1
Name: click-lazy
Version: 0.0.1
Summary: LazyGroup implementation for Click which imports only nessesery commands
Home-page: https://github.com/nagolos/click-lazy
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Description-Content-Type: text/markdown
Provides-Extra: test
License-File: LICENSE

# click-lazy

$ click_lazy

Click lazy is an extention for [click](https://palletsprojects.com/p/click).

Click lazy allow you to separate set of commands in file and import it only if necessary.

## A Simple Example

```python
from click_lazy import LazyGroup

...

if __name__ == '__main__':
    # This group of commands will import group_heavy only if needed
    cli.add_command(LazyGroup(name='heavy', import_name='group_heavy:cli'))

    cli()
```

group_heavy.py

```python
import click


@click.group()
def cli():
    """Havy script"""


@cli.command(name='heavy_cmd')
def run_heavy_cmd():
    print('Running command from heavy group file')
```

[See complete example on github](https://github.com/nagolos/click-lazy/tree/main/examples)

## Links

- [click-lazy on PyPi](https://pypi.org/project/click-lazy/)
- [click-lazy source code](https://github.com/nagolos/click-lazy)
- [click documentation](https://click.palletsprojects.com/)
