semvec/pypi-packages huggingface dataset:
bgcflow_wrapper 0.5.0
A snakemake wrapper and utility tools command line interface for BGCFlow.
License: MIT
Requires Python: <4.0,>=3.11

# BGCFlow Wrapper


<p align="left">
<a href="https://pypi.python.org/pypi/bgcflow_wrapper">
    <img src="https://img.shields.io/pypi/v/bgcflow_wrapper.svg"
        alt = "Release Status">
</a>

<a href="https://github.com/NBChub/bgcflow_wrapper/actions">
    <img src="https://github.com/NBChub/bgcflow_wrapper/actions/workflows/dev.yml/badge.svg?" alt="CI Status">
</a>

<a href="https://NBChub.github.io/bgcflow_wrapper/">
    <img src="https://img.shields.io/website/https/NBChub.github.io/bgcflow_wrapper/index.html.svg?label=docs&down_message=unavailable&up_message=available" alt="Documentation Status">
</a>

</p>


A snakemake wrapper and utility tools for [BGCFlow](https://github.com/NBChub/bgcflow), a systematic workflow for the analysis of biosynthetic gene clusters across large genomic datasets.

For more details, see [documentation](https://NBChub.github.io/bgcflow_wrapper/).

Please refer to the `BGCFlow` WIKI for detailed examples and use cases:

[![wiki](https://img.shields.io/badge/wiki-documentation-forestgreen)](https://github.com/NBChub/bgcflow/wiki)

## Publication
> Matin Nuhamunada, Omkar S Mohite, Patrick V Phaneuf, Bernhard O Palsson, Tilmann Weber, BGCFlow: systematic pangenome workflow for the analysis of biosynthetic gene clusters across large genomic datasets, Nucleic Acids Research, 2024;, gkae314, [https://doi.org/10.1093/nar/gkae314](https://doi.org/10.1093/nar/gkae314)

## Setup
--------
### Setup via Conda
To install `bgcflow_wrapper` with conda/mamba, run this command in your
terminal:

```bash
# create and activate new conda environment
mamba create -n bgcflow -c conda-forge python=3.11 pip openjdk -y
conda activate bgcflow

# install BGCFlow wrapper
pip install bgcflow_wrapper
```

## Features
![function](https://raw.githubusercontent.com/NBChub/bgcflow_wrapper/main/docs/assets/Figure_01.png)
--------
```bash

$ bgcflow

Usage: bgcflow [OPTIONS] COMMAND [ARGS]...

  A snakemake wrapper and utility tools for BGCFlow
  (https://github.com/NBChub/bgcflow)

Options:
  --version   Show the version and exit.
  -h, --help  Show this message and exit.

Commands:
  build       Build Markdown report or use dbt to build DuckDB database.
  clone       Get a clone of BGCFlow to local directory.
  deploy      [EXPERIMENTAL] Deploy BGCFlow locally using snakedeploy.
  get-result  View a tree of a project results or get a copy using Rsync.
  init        Create projects or initiate BGCFlow config from template.
  pipelines   Get description of available pipelines from BGCFlow.
  run         A snakemake CLI wrapper to run BGCFlow.
  serve       Serve static HTML report or other utilities (Metabase, etc.).
  sync        Upload and sync DuckDB database to Metabase.
```

## Credits

This package was created with the [ppw](https://zillionare.github.io/python-project-wizard) tool. For more information, please visit the [project page](https://zillionare.github.io/python-project-wizard/).
fastapi-ndjson-logger 0.1.4
A FastAPI middleware for logging requests and responses in NDJSON format
License: MIT
Requires Python: >=3.12

[![MIT License](https://img.shields.io/badge/License-MIT-green.svg)](https://choosealicense.com/licenses/mit/)

![Logo](https://analogdatagh-readmeimg.s3.ap-south-1.amazonaws.com/logo/pyrestsmall.png)

# FastAPI-Logger

**FastAPI-Logger** is a middleware that provides easy-to-use request and response logging for FastAPI applications. It supports log rotation, custom log directory, and handles sensitive data securely by redacting sensitive headers.

---

## Features

- Logs all incoming requests and outgoing responses.
- Supports log rotation with customizable file size and backup count.
- Handles sensitive data by redacting headers like `Authorization`.
- Outputs logs in JSON format for easy integration with log management tools.
- Flexible configuration for log directory and file size.

---

## Requirements

- Python 3.12 or higher
- FastAPI framework

## Installation

Create and activate a virtual environment and then install FastAPI & fastapi_ndjson_logger:

```bash
pip install "fastapi[standard]" fastapi_ndjson_logger
```

## Example 

Create a new FastAPI app and add the middleware to it:

```python
import os

from fastapi import FastAPI
from fastapi_ndjson_logger import RequestResponseLogging

# Create logs directory if it doesn't exist
os.makedirs("logs/request_response_logs", exist_ok=True)

app = FastAPI()
app.add_middleware(
    RequestResponseLogging,
    og_dir=os.path.join("logs", "request_response_logs"),  # Directory for log files
    max_mbytes=8,  # 8 MB max file size
    backup_count=3,  # Keep up to 3 rotated files
)

# Add routes to the app
@app.get("/")
async def read_root():
    return {"Hello": "World"}
```

## Run it

```bash
uvicorn app.main:app --reload
```

## Check the logs

```bash
cat logs/request_response_logs/app_log.ndjson
```

## Configuration Parameters

| Parameter      | Description                                    | Default Value         |
|----------------|------------------------------------------------|-----------------------|
| `log_dir`      | Directory to store log files                  | `app_logs`            |
| `max_mbytes`    | Maximum size of a log file in Mega bytes before rotation | `8` (8 MB) |
| `backup_count` | Number of rotated files to retain             | `5`                   |

## Support

For any questions or issues, feel free to open an issue on the GitHub repository.

## License

This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.

## Contributing

Contributions are welcome! Please see the [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines on how to submit improvements and bug fixes. Also, please see the [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md).

## Author

[Rajath Kumar K S](https://github.com/analogdata)
karlib 0.0.3
Kar's library of utilities
License: MIT

# KarLib

This is an open source python library of useful utilities that simplify everyday coding task.


## Table of Contents

- [Installation](#-installation)
- [Usage/Examples](#-usageexamples)
- [Contributing](#-contributing)
- [License](#-license)


## Installation

Install this project using pypi package manager.
```bash
$ pip install karlib
```

## Usage/Examples

See wiki for all usage examples.


## Contributing

Contributing towards this repo is open heartedly welcomed. Please make sure to add comments wherever needed to provide some clarity. Any type of code which damages other's properties will not be tolerated.

1. Fork the repository.
2. Create a new branch: `git checkout -b feature-name`.
3. Make your changes.
4. Push your branch: `git push origin feature-name`.
5. Create a pull request.


## License

[![MIT License](https://img.shields.io/badge/License-MIT-green.svg)](https://choosealicense.com/licenses/mit/)

This is an open source project which is under MIT License. For more information please read the license file.