semvec/pypi-packages huggingface dataset:
curdezgen 0.1.2
A CRUD generator following Vertical Slice Architecture (VSA)
Requires Python: >=3.9

# curdezgen

`curdezgen` 是一个基于垂直切片架构 (Vertical Slice Architecture, VSA) 的 FastAPI CRUD 代码生成工具。它可以根据您的数据库表结构，自动生成符合最佳实践的后端代码。

## 核心特性

- **垂直切片架构**: 每个业务功能（如创建用户、获取商品列表）都是独立的切片，包含路由、逻辑和 DTO。
- **自动数据库扫描**: 使用 SQLAlchemy 自动识别数据库表、列、主键和类型。
- **高度可定制**: 通过简单的 YAML 配置文件控制生成行为。
- **FastAPI 最佳实践**: 生成的代码包含 Pydantic 数据验证、依赖注入 (DI) 和自动文档支持。
- **Docker 一键部署**: 自动生成 Dockerfile、docker-compose.yml 以及跨平台的启动/停止/重启脚本。
- **中文本地化**: 生成的代码注释、提示信息及 Docker 脚本均已本地化为中文。

## 安装

```bash
pip install curdezgen
```

## 快速开始

### 1. 创建配置文件

在项目根目录下创建一个名为 `curdezgen.yaml` 的文件，并填入以下内容：

```yaml
db:
  type: postgresql  # 支持 postgresql, mysql
  host: localhost
  port: 5432
  user: postgres
  password: your_password
  name: your_db_name
  schema_name: public

gen:
  output_dir: output
  base_package: app

docker:
  enabled: true
  python_version: "3.10"
```

### 2. 初始化项目结构

根据配置文件创建项目骨架（包括 `core`, `shared`, `features` 目录）：

```bash
python -m curdezgen.cli init
```

### 3. 生成 CRUD 代码

连接数据库并根据表结构生成具体的业务代码：

```bash
python -m curdezgen.cli crud
```

生成的业务代码将存放在 `app/features/{db_name}_{ip}/{schema}_{table}/` 目录下。

### 4. 生成 Docker 部署文件

生成容器化部署所需的配置文件和一键管理脚本：

```bash
python -m curdezgen.cli docker
```

文件将生成在 `output/docker_file/` 目录下。

### 5. 运行项目

#### 本地运行

```bash
uvicorn app.main:app --reload
```

#### Docker 运行

进入 `docker_file` 目录并运行启动脚本：

**Windows (PowerShell):**
```powershell
.\docker_file\start_docker.ps1
```

**Linux / macOS:**
```bash
./docker_file/start_docker.sh
```

脚本会自动构建镜像、启动服务（后台运行），并输出访问地址。

## 常用命令

- `init`: 初始化项目骨架。
- `crud` (或 `gen`): 逆向工程，生成 CRUD 代码。
- `slice`: 正向工程，生成空白业务切片。
- `docker`: 生成 Docker 部署文件。

详细命令说明请参考 [COMMANDS.md](COMMANDS.md)。

## 架构指南

生成的代码遵循垂直切片架构，详情请参考 [ARCHITECTURE.md](ARCHITECTURE.md)。

## 数据库支持

- **PostgreSQL**: 需安装 `psycopg2-binary`
- **MySQL**: 需安装 `pymysql`
asyncpg-datalayer 0.0.5
Datalayer implementation for Postgres using asyncpg
Requires Python: <4.0,>=3.12

# asyncpg-datalayer

[![Test](https://github.com/svaponi/asyncpg-datalayer/actions/workflows/run-tests.yml/badge.svg)](https://github.com/svaponi/asyncpg-datalayer/actions/workflows/run-tests.yml)

Datalayer implementation for [Postgres](https://www.postgresql.org/)
using [asyncpg](https://github.com/MagicStack/asyncpg) (asynchronous Postgres driver).
remote-bash-tool 0.2.0
OpenCode custom tool for running remote bash commands over SSH.
Requires Python: >=3.10

# remote-bash-tool

OpenCode 自定义工具：通过 SSH（读取 `~/.ssh/config`）在远程机器执行 bash 命令，基于 `asyncssh` 支持异步调用。

OpenCode custom tool: run bash commands on remote hosts via SSH (reads `~/.ssh/config`), powered by `asyncssh` with async support.


## Install (uv)

```bash
uv venv
uv sync
```


## Usage

示例：在终端中直接执行（无需单独脚本文件）：

Example: run directly in terminal (no script file needed):

```bash
# 使用 uvx 直接运行
uvx --from remote-bash-tool remote-bash --host-alias prod-db --command "uptime"

# 在项目内，使用 uv
uv run remote-bash --host-alias prod-db --command "uptime"

# 或者安装到环境后
remote-bash --host-alias prod-db --command "uptime"

# 如果想要 JSON 输出
remote-bash --host-alias prod-db --command "df -h" --json
```

也支持模块方式运行：

Module invocation is also supported:

```bash
python -m remote_bash_tool --host-alias prod-db --command "uptime"
```

查看帮助：

Show help:

```bash
remote-bash --help
```

示例：在 Python 代码中直接调用工具方法。

Example: call from Python code:

```python
import asyncio

from remote_bash_tool.tool import run


async def main() -> None:
    result = await run(
        {"host_alias": "prod-db", "command": "uptime", "stream_output": True}
    )
    print(result["stdout"])


asyncio.run(main())
```


## OpenCode config (optional)

1. 将工具模块挂载到 OpenCode（示例配置，参考 OpenCode 自定义工具指南进行调整）：

1. Register the tool module in OpenCode (example config, adjust per OpenCode docs):

   ```yaml
   tools:
     - name: remote_bash
       module: remote_bash_tool.tool
       entrypoint: run
   ```

3. 在 OpenCode 中调用工具：

3. Call the tool in OpenCode:

   ```json
   {
     "host_alias": "prod-db",
     "command": "df -h",
     "timeout": 10,
     "stream_output": true
   }
   ```


## CI & PyPI Publishing

- CI：`.github/workflows/ci.yml` 会在 push/PR 时运行测试。
- 发布：`.github/workflows/publish.yml` 会在推送 `v*` 标签时构建并发布到 PyPI（使用 Trusted Publishing）。
- 首次发布：如果 PyPI 还没有该项目，先用 API Token 完成首发；首发后再在 PyPI 配置 Trusted Publisher 并切回 OIDC。

- CI: `.github/workflows/ci.yml` runs tests on push/PR.
- Publish: `.github/workflows/publish.yml` builds and publishes on `v*` tags (Trusted Publishing).
- First publish: if the project does not exist on PyPI, use an API token once; then configure a Trusted Publisher and switch back to OIDC.

发布步骤示例：

Publish example:

```bash
git tag v0.1.0
git push origin v0.1.0
```
LCPDelta 2.1.26
LCPDelta Python Package
Requires Python: >=3.9
Keywords: LCPDelta, Enact, Flextrack, Storetrack

# LCPDelta Python Package
The LCPDelta Python package provides streamlined access to data available from the [**Enact**][Enact_Homepage], [**FLEXtrack**][FLEXtrack_Homepage] APIs.

It contains helper methods for requesting data from our API endpoints or subscribing to push groups, all of which are detailed on our [**developer documentation site**][Api_Docs].

### Installation
The Python package requires Python 3.10 or greater, and can be installed via:

```
pip install LCPDelta
```

### Usage

The Enact and FLEXtrack modules can be imported as follows:

```python
from lcp_delta import enact
import lcp_delta.flextrack as flextrack
```

The package requires a username and API key, which will be emailed on signup. Helper objects can then be instantiated as follows:
```python
username = "insert_username_here"
public_api_key = "insert_public_api_key_here"

enact_api_helper = enact.APIHelper(username, public_api_key)
enact_dps_helper = enact.DPSHelper(username, public_api_key)
flextrack_api_helper = flextrack.APIHelper(username, public_api_key)
```

From here, you can call any of the available helper methods to retrieve data in one call or listen for pushes. The following example makes use of Enact's Series Data endpoint:
```python

from_date = date(2023,10,1)
to_date = date(2024,10,1)

series_id = "LcpDemandvsGrid"

response = enact_api_helper.get_series_data(
    series_id,
    from_date,
    to_date,
    country_id = "Gb",
    time_zone_id="UTC"
)

print(response.head(5))
```

Check out our [**API guides**][Api_Docs] for detailed instructions on getting started with the API, our [**Recipes page**][Api_Recipes] for example scripts using our Python package, and our [**API reference**][Api_Reference] for details on each specific API endpoint (and corresponding Python package method).

Full documentation of our API and Python package can be found on our [**documentation site**][Api_Docs].

[Api_Docs]: https://api.lcpdelta.com/
[Api_Recipes]: https://api.lcpdelta.com/recipes
[Api_Reference]: https://api.lcpdelta.com/reference
[Enact_Homepage]: https://enact.lcpdelta.com/
[FLEXtrack_Homepage]: https://flextrack.lcpdelta.com/

# Contributing

Check out our [contribution guidelines](CONTRIBUTING.md) and [code of conduct](CODE_OF_CONDUCT.md).
crossgp 0.1.3
Coherent and incoherent component separation with Gaussian processes

# CrossGP: Coherent and incoherent component separation with Gaussian Processes
[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.16084622.svg)](https://doi.org/10.5281/zenodo.16084622)

crossgp is a Python-based tool for performing Gaussian process regression (GPR) to separate out coherent and incoherent components across multiple data sets. The tool works with general 1D signals as well as gridded visibility cubes in the form obtained using [ps_eor](https://gitlab.com/flomertens/ps_eor). The algorithm used by the tool is described by Munshi et al. (in prep).

# Dependencies
crossgp requires the following python libraries:
- ps_eor
- GPy
- emcee
- corner
- tqdm
- numpy
- matplotlib

# Installation
crossgp can be installed via pip:
```
pip install crossgp
```

# Documentation
A step-by-step guide is presented in the wiki page.
eyedentify3d 1.0.7
A package to identify gaze behavior from mobile eye-tracking data.
Requires Python: >=3.11

# EyeDentify3D: A Python package for gaze behavior classification of mobile eye-tracking data

<a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/license-MIT-success" alt="License"/></a>
[![Build status](https://github.com/EveCharbie/EyeDentify3d/actions/workflows/run_tests.yml/badge.svg)](https://github.com/EveCharbie/EyeDentify3d/actions)
[![codecov](https://codecov.io/gh/EveCharbie/EyeDentify3d/graph/badge.svg?token=BP4B2TCZXI)](https://codecov.io/gh/EveCharbie/EyeDentify3d)

![Animation](docs/figures/animation.gif)

## Installation
The easiest way to install `EyeDentify3D` is to use pip:
```bash
pip install eyedentify3d
```

If you prefer to install from source, you can clone the repository and create a conda environment with the required dependencies:
```bash
conda env create -f environment.yml
```

## Documentation
you can find the paper accompanying our JOSS submission [here](paper/paper.pdf) and a deeper documentation of the 
package features and underlying mathematical choices [here](https://evecharbie.github.io/EyeDentify3d).

## Examples
Examples of usage can be found in the [examples](examples/) directory.

## Citation
If you use `EyeDentify3D` in your research, please cite the following paper:
```bibtex
@article{Charbonneau2025EyeDentify3D,
  title={EyeDentify3D: A Python package for gaze behavior classification of mobile eye-tracking data},
  author={Charbonneau, Eve and Romeas, Thomas and Trempe, Maxime},
  journal={Submitted to Journal of Open Source Software},
}
```
level1c4pps 0.2.40
Tools to convert various satellite level-1 data formats to NWCSAF/PPS level-1c format
Requires Python: >=3.7

level1c4pps
===========

[![Build status](https://github.com/foua-pps/level1c4pps/workflows/CI/badge.svg?branch=master)](https://github.com/foua-pps/level1c4pps/workflows/CI/badge.svg?branch=master)
[![Coverage Status](https://coveralls.io/repos/github/foua-pps/level1c4pps/badge.svg)](https://coveralls.io/github/foua-pps/level1c4pps?branch=master)


Tools to generate NWCSAF/PPS level-1C formattet netCDF files from various
agency specific level-1 formats. So far, supports

 - EUMETSAT Meteosat Second Generation SEVIRI HRIT level-1.5
 - NOAA AVHRR GAC
 - MERSI-2/3 level-1
 - MODIS level-1
 - AVHRR eps level-1b
 - AVHRR AAPP level-1b
 - VIIRS level-1b
 - SLSTR level-1b
 - EPS-SG MetImage level-1 test data
 - EUMETSAT AVHRR GAC FDR
ipython 9.10.0
IPython: Productive Interactive Computing
Requires Python: >=3.11
Keywords: Interactive, Interpreter, Shell, Embedding

IPython provides a rich toolkit to help you make the most out of using Python
interactively.  Its main components are:

 * A powerful interactive Python shell
 * A `Jupyter <https://jupyter.org/>`_ kernel to work with Python code in Jupyter
   notebooks and other interactive frontends.

The enhanced interactive Python shells have the following main features:

 * Comprehensive object introspection.

 * Input history, persistent across sessions.

 * Caching of output results during a session with automatically generated
   references.

 * Extensible tab completion, with support by default for completion of python
   variables and keywords, filenames and function keywords.

 * Extensible system of 'magic' commands for controlling the environment and
   performing many tasks related either to IPython or the operating system.

 * A rich configuration system with easy switching between different setups
   (simpler than changing $PYTHONSTARTUP environment variables every time).

 * Session logging and reloading.

 * Extensible syntax processing for special purpose situations.

 * Access to the system shell with user-extensible alias system.

 * Easily embeddable in other Python programs and GUIs.

 * Integrated access to the pdb debugger and the Python profiler.

The latest development version is always available from IPython's `GitHub
site <http://github.com/ipython>`_.