semvec/pypi-packages huggingface dataset:
mal-language-server 0.1.0
Language server for MAL
Requires Python: >=3.11

# MAL Language Server
`mal-language-server` is a language server for [MAL](https://github.com/mal-lang).

## General
The project uses [`uv`](https://docs.astral.sh/uv/) as the main project manager and [`ruff`](https://docs.astral.sh/ruff/) for linting/formatting. `ruff` can be installed via uv as native via `uv tool install ruff` or use it as the dev-dependency its specified as via `uv run ruff <command>`.

Before running the project or editing files, `uv` must download the required packages. For
that, use `uv sync`.

## Running

To run the server, use the command `uv run malls -- <options>`. 

There are two main ways of interacting with the server, via files or TCP. This can be configured
via the start-up options. Obviously, they are mutually exclusive, meaning only one can be used per
server instance.

1. *Files*: for this option, run `uv run malls --stdio`, which defaults to standard input and output.
To configure what files are used to read from/write to, run `uv run malls --stdio -o OUT_FILE_PATH -i IN_FILE_PATH`.

2. *TCP*: for this option, run `uv run malls --tcp`, which starts the server on `localhost` with port
`8080`. To use another host or port, add those options with `uv run malls --tcp --host HOST -p PORT`.

Other start-up arguments, namely related to logging, can be found using `uv run malls -h`

## Installation
### NeoVim
1. Install the server via pip, for example locally:
    ```sh
    pip install /folder/path/of/pyproject
    ```
    > [!NOTE]
    > Use `-e` to install it in editable/development mode, which updates the installation live.
2. Configure your NeoVim LSP client, for example :
    `init.lua`
    ```lua
    vim.lsp.config['malls'] = {
        cmd = { "malls", "--stdio" },
        filetypes = { 'mal' },
    }
    vim.lsp.enable('malls')
    ```
    > [!NOTE]
    > Tested for NeoVim v0.11.1

## CI/CD

Packages are published via UV on ubuntu to PyPI on tags pushed to the repository.

Tests are ran with pytest and pytest-xdist on ubuntu and macos. Additionally formatting and linting checks are ran with ruff.
plotting-utils 0.1.5
Elegant wrappers around matplotlib and seaborn for scientific plotting
Requires Python: >=3.6

# plotting_utils

A Python package providing elegant wrappers around matplotlib and seaborn functions to make scientific plotting easier and more consistent.

## Features

### 🎨 Color Palettes
- **Custom color schemes**: `ten_godisnot`, `darjeeling`, `fantastic_fox`
- **Palette creation utilities**: `create_palette()` for generating custom color schemes

### 📊 Plotting Functions
High-level plotting functions with sensible defaults:
- **Basic plots**: `scatter()`, `bar()`, `box()`, `strip()`, `violin()`
- **Distribution plots**: `dist()`, `counts_plot()`
- **Specialized plots**: `heatmap()`, `dotplot()`, `volcano()`, `stem_plot()`, `rank_plot()`
- **Statistical plots**: Built-in support for statistical annotations with `add_wilcox()`

### 🛠 Utility Functions
- **Styling**: `set_rcParams()` for Nature journal-style settings
- **Plot enhancement**: `format_ax()`, `add_legend()`, `add_cbar()`
- **File operations**: `save_best_pdf_quality()`, `make_folder()`
- **Performance**: `Timer` class for benchmarking

## Installation

```bash
pip install plotting_utils
```

## Quick Start

```python
import plotting_utils as plu
import matplotlib.pyplot as plt
import pandas as pd

# Set journal-style parameters
plu.set_rcParams()

# Create a scatter plot with custom styling
fig, ax = plt.subplots(figsize=(6, 4))
plu.scatter(x, y, c=plu.darjeeling[0], ax=ax)
plu.format_ax(ax, xlabel='X values', ylabel='Y values')

# Save with best quality
plu.save_best_pdf_quality(fig, 'my_plot.pdf')
```

## Dependencies

- matplotlib
- seaborn  
- statannotations
- textalloc
- joblib
- scikit-learn

## Release History

### 0.1.4 (2025-09-11)
- Enhanced README with comprehensive documentation
- Added proper package metadata (long_description, author, classifiers)
- Improved PyPI package presentation

### 0.1.3
- Previous stable release

## License

See LICENSE file for details.

## Version

Current version: 0.1.4
hermai 0.1.8
A hermeneutic approach to explainable AI (XAI) with contextual and narrative explanations.
Requires Python: >=3.8

# Hermai: A Hermeneutic Explainable AI Library

[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

Hermai is a Python library for explainable AI (XAI) that focuses on providing contextual, narrative, and actionable explanations for machine learning models. Inspired by hermeneutics, it aims to create a dialogue between the user and the model's decision-making process.
<p align="center">
  <img src="https://cdn.jsdelivr.net/gh/BilgisayarKavramlari/hermai@main/hermai_wide.png" alt="Hermai Logo" width="300"/>
</p>


## Key Features

- **Contextual Perturbations:** Generates realistic "what-if" scenarios that respect the correlations in your data.
- **Local Explanations:** Explains individual predictions by identifying key feature contributions and generating counterfactuals.
- **General Explanations:** Approximates the overall behavior of a complex model with a simple, interpretable surrogate model (like a decision tree).
- **Narrative Summaries:** Presents explanations in human-readable text.

## Installation

You can install Hermai directly from GitHub:

```bash
pip install hermai
```

## Quick Usage

Here's a quick example of how to get local and general explanations for a RandomForest model trained on the Titanic dataset.

```python
import pandas as pd
import seaborn as sns
from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import train_test_split
from hermai.perturbations.tabular import TabularPerturbationGenerator
from hermai.explainers import LocalExplainer, GeneralExplainer

# Load and prepare data (assuming X_train, black_box_model are ready)
# ...

# --- Local Explanation ---
generator = TabularPerturbationGenerator(categorical_features=['pclass', 'sex', 'embarked'])
generator.fit(X_train)
local_explainer = LocalExplainer(black_box_model, generator)
instance = X_test.iloc[0]
local_explanation = local_explainer.explain(instance)
print(local_explanation.narrative())
local_explanation.plot()


# --- General Model Explanation ---
general_explainer = GeneralExplainer(black_box_model)
general_explanation = general_explainer.explain(X_train)
general_explanation.plot_feature_importance()
general_explanation.plot_surrogate_tree()
```

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
OpenSimula 0.5.0
Component-based time simulation environment in Python
Requires Python: >=3.12

![Logo](https://jfcoronel.github.io/OpenSimula/img/logo_opensimula.png)
Component-based time simulation environment in Python

[Documentation page](https://jfcoronel.github.io/OpenSimula/)

## Main Developers

* [Juan F. Coronel](http://jfc.us.es), Universidad de Sevilla

## Package dependencies
- numpy
- pandas
- scipy
- shapely
- psychrolib
- plotly
- dash
- dash_bootstrap_components
- dash_ag_grid
- pyvista
- trame
- trame-vtk
- trame-vuetify
- ipywidgets
Figure-area-calculator 0.0.1
This project is a simple module designed to calculate the area of geometric figure.
Requires Python: >=3.6

# Figure Area Calculator 
***
## Описание 
Этот проект представляет собой простой класс Figure на языке Python, предназначенный для расчета площади геометрических фигур. Поддерживаются следующие типы фигур:

* Треугольник (triangle / треугольник): Расчет по формуле Герона или по формуле для прямоугольного треугольника (если применимо).
* Круг (circle / круг): Расчет по формуле πr².
***
## Использование

Класс Figure принимает 2 атрибута: figure_type и data. 

В для figure_type применимыми значениями являются 'triangle', 'треугольник' (для расчета площади треугольника), 'circle', 'круг' (для расчета площади круга).

При расчете площади круга значение data должно быть числом (например 5.21), при расчете площади теугольника - 3 числа разделенные символом ":" (например 4:8.7:9.1).

Для расчета площади используется метод calculate_area.

### Пример использования 

```python

from Figure_area_calculator import Figure


test_figure = Figure('triangle', '5:3:6')
test_figure.calculate_area()
sicore 3.0.0
Core Package for Selective Inference
Requires Python: >=3.10

# sicore package

[![PyPI - Version](https://img.shields.io/pypi/v/sicore)](https://pypi.org/project/sicore/)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/sicore)](https://pypi.org/project/sicore/)
[![PyPI - License](https://img.shields.io/pypi/l/sicore)](https://opensource.org/license/MIT)

This package provides core functions for selective inference.

Detailed API reference is [here](https://shirara1016.github.io/sicore/).

## Installation

This package requires python 3.10 or higher and automatically installs any dependent packages. If you want to use tensorflow and pytorch's tensors, please install them manually.
```
$ pip install sicore
```
Uninstall :
```
$ pip uninstall sicore
```

## Module Contents
The following modules can be imported by `from sicore import *`.

**Selective Inference**
- SelectiveInferenceNorm : Selective inference for the normal distribution.
- SelectiveInferenceChi : Selective inference for the chi distribution.
- SelectiveInferenceResult: Data class for the result of selective inference.

**Evaluation**
- rejection_rate(): Computes rejection rate from the list of SelectiveInferenceResult objects or p-values.

**Figure**
- pvalues_hist() : Draws a histogram of p-values.
- pvalues_qqplot() : Draws a uniform Q-Q plot of p-values.
- SummaryFigure: Draws a summary figure.

**Interval Operations**
- RealSubset : Class for representing a subset of real numbers, which provides many operations with intuitive syntax.
- complement() : Take the complement of intervals.
- union() : Take the union of two intervals.
- intersection() : Take the intersection of two intervals.
- difference() : Take the difference of first intervals with second intervals.
- symmetric_difference() : Take the symmetric difference of two intervals.

**Inequalities Solver**
- polynomial_below_zero() : Compute intervals where a given polynomial is below zero.
- polytope_below_zero() : Compute intervals where a given polytope is below zero.
- linear_polynomials_below_zero: Compute intervals where given degree-one polynomials are all below zero.

**Truncated Cumulative Distribution Function**
- truncated_cdf(): Compute the truncated cumulative distribution function of a given distribution.

**Non-Gaussian Random Variables**
- generate_non_gaussian_rv(): Generate a standardized random variable in a given rv_name family with a given Wasserstein distance from the standard gaussian distribution.

**Uniformity Test**
- uniformity_test(): Conduct multiple uniformity tests on the given samples.

**Constructor**
- OneVector : Vector whose elements at specified positions are set to 1, and 0 otherwise.
- construct_projection_matrix() : Construct projection matrix from basis.

## Others
Execute code test :
```
$ pytest tests/
```
yitorch 0.1.0
Add your description here
Requires Python: >=3.10

# @yitech/yitorch 

## 安装 uv 

运行
```bash
# 使用官方安装脚本
curl -LsSf https://astral.sh/uv/install.sh | sh
# 或者使用 pip
pip install uv
```

## 开发模式

切换到项目根目录，运行
```bash
uv pip install -e .
```
yooztech-mcp-api-request 0.0.5
MCP server template for generic API requests
Requires Python: >=3.10

## yooztech_mcp_api_request —— 基于 MCP 的通用 API 请求工具

该 MCP 服务器用于向真实后端 API 发起请求，帮助前端/AI 获取最真实的接口返回；包含：
- `init_config(project_root=None, overwrite=false, tokens=None, fmt="yaml")`：在项目根创建配置文件，存储鉴权信息
- `api_request(method, url, params=None, headers=None, body=None, project_root=None, timeout_seconds=30)`：读取配置并发起请求，返回基本信息与完整响应

### 在 Cursor 中配置
在 Cursor 的设置中添加 MCP Server（示例）：

```json
{
  "mcpServers": {
    "yooztech_mcp_api_request": {
      "command": "yooztech_mcp_api_request",
      "args": []
    }
  }
}
```

如不想全局安装，可使用 `uvx` 方式：

```json
{
  "mcpServers": {
    "yooztech_mcp_api_request": {
      "command": "uvx",
      "args": ["yooztech_mcp_api_request"]
    }
  }
}
```

### 脚本与入口
- 控制台脚本：`yooztech_mcp_api_request`（见 `pyproject.toml` 的 `[project.scripts]`）

### 开发
- 依赖安装：`pip install -r requirements.txt`
- 运行：`yooztech_mcp_api_request`

### 配置文件
- 默认文件名（写入项目根目录）：`.mcp_api_request.yml`（或 `.json` 当 `fmt=json`）
- 文件结构：列表，每项为 `{type, key, value}`
  - `type`: `header` | `param`
  - `key`: token 的字段名
  - `value`: token 的值

示例（YAML）：

```yaml
- type: header
  key: Authorization
  value: Bearer xxxxxx
- type: param
  key: access_token
  value: xxxxxx
```

或（JSON）：

```json
[
  {"type":"header","key":"Authorization","value":"Bearer xxxxxx"},
  {"type":"param","key":"access_token","value":"xxxxxx"}
]
```

### 使用流程
1) 初始化（生成空值模板）：
```json
{"tool":"init_config","args":{"overwrite":false}}
```
执行后会在项目根创建 `.mcp_api_request.yml`（或 `.json`），其中示例条目的 `value` 为空。请手动编辑为你的真实 token；空值项在请求时不会发送。

2) 发起请求：
```json
{
  "tool":"api_request",
  "args":{
    "method":"GET",
    "url":"https://api.example.com/users",
    "params":{"page":1},
    "headers":{"X-Debug":"1"}
  }
}
```

### 许可证
- MIT（见 `LICENSE`）
image-illumination-restoration 0.1.3
Image_Illumination_&_Restoration
Requires Python: >=3.7


# Image_Illumination_&_Restoration (IDR)

IDR is a lightweight Python library to automatically enhance dark or overly exposed images.
It automatically adjusts brightness and contrast


![logo.png](https://i.postimg.cc/Wbm0P3Dk/logo.png)

## Features

- Automatic detection and enhancement of dark images.
- Brightness and contrast correction.
- Simple one-line usage.
- Adaptive histogram equalization (CLAHE).

## File Formats Supported

- **.png**
- **.jpg**
- **.jpeg**
- **.bmp**
- **.tif**
- **.tiff**




## Installation



```python
pip install image-illumination-restoration

```
    
## Usage

```python
import idr

# Enhance a dark image
idr.em("dark.jpg")
print("done")

```
or 
```python
import idr

idr.em(
    input_path="dark.jpg",
    output_dir="./enhanced",
    verbose=True  # Enable to check min/max values and diagnose black output
)
```

## Demo

before using the lib

![App Screenshot](https://i.postimg.cc/J7Kv2Kfp/dark.jpg)

after using the lib

![App Screenshot](https://i.postimg.cc/Qtdk9gfN/dark-colors.jpg)

before using the lib

![App Screenshot](https://i.postimg.cc/RZ87gfrB/2.jpg)

after using the lib

![App Screenshot](https://i.postimg.cc/tCjmzK3w/2-final.jpg_++)


## Authors

- [@Rudransh joshi](https://rudransh.kafalfpc.com/)


## Acknowledgements

The name **IDR** was also chosen as a small tribute to a person who inspired me.


## License

[MIT](https://choosealicense.com/licenses/mit/)
readables-py 0.2.3
Add readability and self-documentation to Python code
Requires Python: >=3.9

# readables-py

Enhance code readability and self-documentation in our Python code

---

### Distributed Lock

> [!NOTE]
> Check out [the dedicated documentation](readables/dlock/README.md).

---

### Environment Variable Manager and Exporter

#### Declare and retrieve variables

Here is how you can declare and retrieve variables.

```python
# file: your_app/constants.py
from readables.env import required_env, optional_env, flag

ALPHA = required_env('ALPHA', help='Alpha variable')
BETA = optional_env('BETA', 'default_value', help='Beta variable')
CHARLIE = flag('CHARLIE', help='Charlie flag')
```

> [!TIP]
> When `required_env` is used, if the variable is not set, it will raise an exception.

#### Export variables

We have provided two exporters: the env file exporter and the MarkDown exporter. If you are working on the code that
the required environment variables have not been set, you will need to set `READABLES_ENV_ALLOW_UNSET_REQUIRED` to `true`
before using an exporter to suppress the error.

In this example, we use the env file exporter to generate the content of the distributed env file using the content above.

```python
# file: scripts/gen_dist_env.py
from os import environ

environ['READABLES_ENV_ALLOW_UNSET_REQUIRED'] = 'true'

# noinspection PyUnresolvedReferences
from your_app import constants
from readables.env import manager, EnvFileExporter

output = EnvFileExporter.export(manager.variables)
```

> [!NOTE]
> An exporter does not know how to scan the code. So, you need to find the way to ensure that the manager knows the
> declared variables. In this example, it imports any references to the "static" variables.