semvec/pypi-packages huggingface dataset:
neoconfigen 2.5.0
A fork of hydra-core's configen with extended type-compatibility.
License: MIT
Requires Python: >=3.10,<3.13
Keywords: hydra,python

# configen

Automatically generates Structured Configs that can be used with hydra.utils.instantiate()

This is optional at two levels:
1. Structured Configs are optional, one can use Hydra without them.
2. One can manually code these dataclasses. The advantage of this tool is that it does the work automatically.

# Setup
Configen requires config file per project. The config indicates what classes to generate code for, where to put
the generated code etc.
Configen will suggest creating a config on the first run:
```
$ configen 
[2020-08-14 12:06:11,359][configen.configen][ERROR] - Use --config-dir DIR.
If you have no config dir yet use the following command to create an initial config in the `conf` dir:
        configen init_config_dir=conf
$ configen init_config_dir=conf
[2020-08-14 12:07:07,752][configen.configen][INFO] - Initializing config in 'conf'
```

This will generate a basic config similar to:
```yaml
$ cat conf/configen.yaml 
configen:
  # output directory
  output_dir: ${hydra:runtime.cwd}/gen

  header: |
    # Generated by configen, do not edit.
    # See https://github.com/facebookresearch/hydra/tree/master/tools/configen

  # The directory of each module under output_dir
  module_dir: '{{module_path}}/conf'

  # list of modules to generate configs for
  modules:
    - name: configen.samples.user
      # for each module, a list of classes
      classes:
        - User
```

Configen comes with a few samples [classes](configen/samples) that are being processed by the default config.
For example:
```python title="configen/samples/user.py"
class User:
    def __init__(self, age: int, name: str):
        self.age = age
        self.name = name
```

Running configen with this config directory:
```
$ configen --config-dir conf
[2020-08-14 12:44:54,990][configen.configen][INFO] - configen.samples.user.User -> /home/omry/tmp/configen/gen/configen/samples/user/conf/User.py
```

Will result in a file `gen/configen/samples/user/conf/User.py` like:
```python
# Generated by configen, do not edit.
# See https://github.com/facebookresearch/hydra/tree/master/tools/configen
# fmt: off
# isort:skip_file
# flake8: noqa

from dataclasses import dataclass
from typing import *

from omegaconf import MISSING


@dataclass
class UserConf:
    _target_: str = "configen.samples.user.User"
    age: int = MISSING
    name: str = MISSING
```

The generated code can be used by a Hydra application to instantiate the user object.
See the [example aplication](example/my_app.py).
docscribe 0.1.2
A simple tool to generate documentation, reports, and more from your codebase.
License: MIT
Requires Python: >=3.11

# DocScribe Project

DocScribe is a document generation and management tool designed to streamline the process of creating, managing, and exporting documents across different repositories and platforms. With its modular design, DocScribe offers flexibility and efficiency, catering to a wide range of documentation needs for individuals and organizations alike.

# Features

- Document Generation: Generate documents dynamically using templates and scripts.
- Repository Management: Organize documents in local or cloud-based repositories.
- Exporting: Seamlessly export documents to various formats and destinations.
- Customization: Use and define custom templates, scripts, and exporters based on project needs.
- Modularity: Extend functionality with custom repository types and exporters.

# Installation
Before installing DocScribe, ensure you have Python 3.11 or higher installed on your system.

```bash
pip install docscribe
```

# Understanding Repositories and Exporters

## Repositories
A repository in DocScribe is a storage space where documents are organized. Repositories can be local (on your file system) or cloud-based (such as an AWS S3 bucket). Each repository can contain multiple documents, each with its own configuration, templates, and scripts for generation.

## Exporters
Exporters are modules in DocScribe that handle the exporting of generated documents to different formats or destinations. For example, a document can be exported to a local directory or to an S3 bucket.

# Quick Start Guide

## Init DocScribe
To start using DocScribe, you need to create a new repository. You can do this using the `docscribe init` command. Pass `-p` or `--package-manager` to specify the package manager you are using. For example `pip`, `pipenv`, etc.

```bash
docscribe init -p pip
```

## Create a local document package
After initializing DocScribe, you can create a new document package using the `docscribe create` command. This will create a new document package in the current directory.

```bash
docscribe create -n "my_document_package_name" -t md
```



# License
DocScribe is released under the MIT License. See the LICENSE file for more details.

# Support
If you encounter any issues or have questions about DocScribe, please file an issue on the GitHub repository.