semvec/pypi-packages huggingface dataset:
hwhpykit 1.1.8
Packaging tools for own use
Requires Python: >=3.10


# hwhpykit

## Main function
+ Connection
  + mqtt

### Connection

#### Mqtt

```
from hwhpykit import MQTTAsyncClient, mqtt_subscribe
import asyncio

# Config MQTT Client
client = MQTTAsyncClient(broker="broker.hivemq.com", port=1883, client_id="my_client")
client.start()


@mqtt_subscribe("topic/test1")
async def handle_message_1(message: str):
    print(f"Received message from topic 1: {message}")

@mqtt_subscribe("topic/test2")
async def handle_message_2(message: str):
    print(f"Received message from topic 2: {message}")

async def send_messages():
    while True:
        await asyncio.sleep(2)
        client.publish("topic/test1", "Hello from topic 1!")
        client.publish("topic/test2", "Hello from topic 2!")

async def main():
    await asyncio.gather(
        send_messages(),
        asyncio.sleep(3600) 
    )

if __name__ == '__main__':
    asyncio.run(main())

```
autohint 1.1.0
AutoHint provides real-time search suggestions with internet integration.
Requires Python: >=3.6

# AutoHint
This is made by Jai Akash

AutoHint is a Python module that provides an interactive search bar with real-time internet-based suggestions.

## Features
- Fetches real-time suggestions from the internet.
- Caches results to improve efficiency.
- Uses a debounce mechanism to optimize API requests.

## Installation
Install AutoHint from PyPI:
```bash
pip install autohint
sejsondb 2025.1.0rc2
A Simple , Lightweight , Efficient JSON based database for Python.
Requires Python: >=3.10

# seJsonDB
A Simple, Lightweight, Efficient JSON based database for Python.
 
 ***

### Installation

To install `seJsonDB`, use pip:

 ```bash
   pip install seJsonDB
 ```
## Features

* __Lightweight__ JSON based database.
* Supports __CRUD__ commands.
* No Database drivers required.
* __Unique ID__ assigned for each JSON document added.
* Strict about __Schema__ of data added. 

```python
>> from seJsonDB import JsonDB
>> db = JsonDB("test.json")
>> db.add_many([{"key": "jsondb", "name":"jsondb","type":"DB"},{"key": "jsondb3","name":"pysondb3","type":"DB"}])
    ({}, {0: {'Exception': 'Id `jsondb` already in DB', 'data': {'key': 'jsondb', 'name': 'jsondb', 'type': 'DB'}}, 1: {'Exception': 'Id `jsondb3` already in DB', 'data': {'key': 'jsondb3', 'name': 'pysondb3', 'type': 'DB'}}})
>> db.get_all()
    {'jsondb': {'key': 'jsondb', 'name': 'jsondb', 'type': 'DB'}, 'jsondb3': {'key': 'jsondb3', 'name': 'pysondb3', 'type': 'DB'}}
```
* See its simple....


## Quick walk through of all the methods

_Coming Soon_
seJsonDB 2025.1.0rc1
A Simple , Lightweight , Efficient JSON based database for Python.
Requires Python: >=3.10

# seJsonDB
A Simple, Lightweight, Efficient JSON based database for Python.
 
 ***

### Installation

To install `seJsonDB`, use pip:

 ```bash
   pip install seJsonDB
 ```
## Features

* __Lightweight__ JSON based database.
* Supports __CRUD__ commands.
* No Database drivers required.
* __Unique ID__ assigned for each JSON document added.
* Strict about __Schema__ of data added. 

```python
>> from seJsonDB import JsonDB
>> db = JsonDB("test.json")
>> db.add_many([{"key": "jsondb", "name":"jsondb","type":"DB"},{"key": "jsondb3","name":"pysondb3","type":"DB"}])
    ({}, {0: {'Exception': 'Id `jsondb` already in DB', 'data': {'key': 'jsondb', 'name': 'jsondb', 'type': 'DB'}}, 1: {'Exception': 'Id `jsondb3` already in DB', 'data': {'key': 'jsondb3', 'name': 'pysondb3', 'type': 'DB'}}})
>> db.get_all()
    {'jsondb': {'key': 'jsondb', 'name': 'jsondb', 'type': 'DB'}, 'jsondb3': {'key': 'jsondb3', 'name': 'pysondb3', 'type': 'DB'}}
```
* See its simple....


## Quick walk through of all the methods

_Coming Soon_
czyrym 1.0.3
Python library to decide if two polish words rhyme
Requires Python: >=3.8

# czyrym

A Python library to detect if two Polish words rhyme. The library has been tested on a corpus of Polish rhymes from [czterycztery.pl](https://czterycztery.pl/programy/slownik_rymow/).

## Performance

The corpus contains 8100 rhymes - czyrym successfully detects 7387 of them. The rate of false positives is quite low: from 37177 non-rhymes in the corpus, czyrym incorrectly detects only 239 of them as rhymes (and for some of them it can be argued that they really are rhymes, just quite imperfect).

When czyrym detects a pair of words as rhymes, it gives a distance between the two words as a number between 0 (a perfect rhyme) and a very big number (hardly a rhyme at all) - so if you want czyrym to be more conservative, you can compare this distance with your threshold.

## Usage Example

```python
import czyrym
from typing import Optional

first: str = czyrym.normalize_word('Róż, ty???')
second: str = czyrym.normalize_word('ruszty')

# if you just want to know if two words rhyme or not, do:
if czyrym.is_rhyme(first, second):
    print(f'"{first}" and "{second}" rhyme')
else:
    print(f'"{first}" and "{second}" do not rhyme')

# if you want to know if two words rhyme or not and what is the distance between them, do:
match: Optional[czyrym.RhymeMatch] = czyrym.find_rhyme_match(first, second)
if match is None:
    print(f'"{first}" and "{second}" don\'t rhyme')
else:
    print(f'A match for "{first}" and "{second}" was found - they rhyme. Total cost of the rhyme (a distance between words) is {match.total_cost}.')

# if you want to understand how it was decided that two words rhyme, do:
if match is None:
    print(f'a match for "{first}" and "{second}" was not found - they don\'t rhyme')
else:
    print(f'A match for "{first}" and "{second}" was found - they rhyme. Their common suffix is {match.common_form}.')
    for word, path in (first, match.first_path), (second, match.second_path):
        if len(path.steps) <= 1:
            print(f'For "{word}" the suffix was not mutated.')
        else:
            print(f'For "{word}" the suffix was produced with these steps:')
            for step in path.steps:
                print(f'  "{step.before}" -> "{step.after}" (mutator: {step.mutator_name}, cost: {step.cost})')
            print(f'Total cost of these steps was {path.cost}.')
```
jupyter-forge 0.1.0
A tool for extracting data from Revit ACC
Requires Python: >=3.9

# Description

Jupyter Forge is a powerful library that seamlessly integrates Autodesk Platform Services with Jupyter Notebooks, enabling interactive 3D viewing and exploration within your notebook environment.

![](./docs/quick-demo.gif)

# Features

- [x] Show 3d viewer from Autodesk Platform Services
- [x] Show 3d viewer from Autodesk Platform Services with object id
- [x] Show 3d viewer from Autodesk Platform Services with object id and ajust width and height
- [x] Zoom In, Zoom Out, Pan, Isolate,
- [x] Clustering Viewer

![](./docs/cluster.gif)


## Installation

```bash
pip install jupyter-forge
```

## Usage

```python
from jupyter_forge import JupyterForge
from aps_toolkit import Auth

urn = "dXJuOmFkc2sud2lwcHJvZDpmcy5maWxlOnZmLlFsa1ZtVU5RUmYtanMtd3dLQ2dLM1E_dmVyc2lvbj0x"
token = Auth().auth2leg()
forge_viewer = JupyterForge(urn, token)
# object id from derivative api
object_ids = [123, 456]
# show 3d viewer
forge_viewer.show(object_ids, width=800, height=600)
```

## Developers

#### Test Data Readme

```python
pip
install - e.
```

#### Fix server not starting

```bash
# start a server with dir 
python -m http.server 54364 --directory D:\API\Forge\jupyter-forge\src\template
``` 

#### Kill Port

```bash
netstat -ano | findstr :54364
taskkill /F /PID 21008
```

- Kill all port relate to 54364

```bash
taskkill /F /PID 21008
```

#### Start Debug

http://localhost:54364/render.html
qiskit-classroom-converter 0.6.0
extend the Qiskit classroom applications.
Requires Python: >=3.10

# qiskit-classroom-converter
Qiskit classroom Converter

## Version

> 0.6.0 (2025-01-01) : The Version has been updated to be compatible with **Qiskit 1.3.1** and **Python 3.13**.
> 0.5.0 (2024-03-06) : The Version has been updated to be compatible with **Qiskit 1.0.0** and **Python 3.12**.


## Documents

https://kmu-quantum-classroom.github.io/qiskit-classroom-converter/qiskit_class_converter.html

## Official USER Guide

https://kmu-quantum-classroom.github.io/documents/overview.html

## Support convert method

* quantum circuit to bra-ket notation
* quantum circuit to matrix
* matrix to quantum circuit
* string to bra-ket notation

---

## Options

| convert method | option                                   |
|----------------|------------------------------------------|
| QC_TO_BRA_KET  | expression{simplify, expand}, print{raw} |
| QC_TO_MATRIX   | print{raw}                               |
| MATRIX_TO_QC   | label{str}                               |
| STR_TO_BRA_KET | print{raw}                               |

```python
from qiskit_class_converter import ConversionService

ConversionService(conversion_type="QC_TO_BRA_KET", option={"expression": "simplify"})
```

## Required data

* MATRIX_TO_QC
  * User's QuantumCircuit object

```python
from qiskit import QuantumCircuit
from qiskit_class_converter import ConversionService

input_value = [
    [1, 0, 0, 0],
    [0, 0, 0, 1],
    [0, 0, 1, 0],
    [0, 1, 0, 0]
]
sample_converter = ConversionService(conversion_type="MATRIX_TO_QC")
result = sample_converter.convert(input_value=input_value)
# using user's QuantumCircuit object
quantum_circuit = QuantumCircuit(2, 2)
quantum_circuit.append(result, [0, 1])
```

## How to Install

```bash
pip install qiskit-classroom-converter
```

## Docker Pull & Run

Alternative installation with docker image.

```shell
docker pull ghcr.io/kmu-quantum-classroom/qiskit-classroom-converter
docker run -p 8888:8888 ghcr.io/kmu-quantum-classroom/qiskit-classroom-converter
```

## Dependencies

* qiskit

## Usage

```python
from qiskit import QuantumCircuit
from qiskit_class_converter import ConversionService
# quantum circuit to matrix
quantum_circuit = QuantumCircuit(2, 2)
quantum_circuit.x(0)
quantum_circuit.cx(0, 1)
sample_converter = ConversionService(conversion_type="QC_TO_MATRIX")
result = sample_converter.convert(input_value=quantum_circuit)
```

code : [example.py](example.py)

## How to test the software

```shell
python -m unittest -v
```

or 

```shell
tox
```

## ARM Platform

Mac ARM chips users may have issues running this package.

We have provided a Dockerfile, which can be used docker-compose.

```shell
docker-compose up --build
```

## Acknowledgement

- 국문 : "본 연구는 2022년 과학기술정보통신부 및 정보통신기획평가원의 SW중심대학사업의 연구결과로 수행되었음"(2022-0-00964)
- English : "This research was supported by the MIST(Ministry of Science, ICT), Korea, under the National Program for Excellence in SW), supervised by the IITP(Institute of Information & communications Technology Planning & Evaluation) in 2022"(2022-0-00964)
impressify 1.3.1
👨‍🎨🎨 impressify
Requires Python: >=3.9

# Impressify 🎨👨‍🎨

**Impressify** is a Python-based CLI tool for image resizing and optimization. It simplifies the process of batch resizing and compressing images, making them suitable for web use, thumbnails, or any application requiring efficient image handling.

---

## Features ✨

- **Batch Resizing**: Process entire directories of images at once.
- **Format Support**: Compatible with `.png`, `.jpg`, and `.jpeg` formats.
- **Quality Control**: Specify output quality (1-100).
- **Optimized Output**: Use advanced optimization for smaller file sizes without compromising quality.
- **Customizable Output**: Define custom output paths and control overwriting behavior.
- **CLI Friendly**: Simple and intuitive command-line interface.

---

## Installation 📦

To install **Impressify**, ensure you have Python 3.9+ and Poetry installed, then run:

```bash
pip install impressify
```


## Usage 🚀

### CLI Commands

Run the tool from the command line with the following syntax:



```bash
impressify <path> <size> [--output <output_path>] [--quality <quality>] [--optimize] [--overwrite]
```

### Arguments
- <path>: Path to an image or directory containing images.
- <size>: Target size (max dimension in pixels) for resizing.

### Optional Flags
- --output: Custom output directory for resized images.
- --quality: Image quality (default: 80, range: 1-100).
- --optimize: Optimize images for reduced size (default: enabled).
- --overwrite: Overwrite existing files (default: disabled).
- --progressive: progressive jpeg.


### Github Actions

```markdown

   - name: 🥦 Install impressify
      run: pip install impressify
      
    - name: 🥒 Resize
      run: |
        impressify moscow/imgs 100
        impressify moscow/imgs 220

```

## Examples

#### Resize a Single Image

```bash
impressify /path/to/image.jpg 300 --quality 90 --optimize
```

#### Batch Resize Images in a Directory

```bash
impressify /path/to/images/ 500 --output /path/to/output/ --overwrite
```

#### Resize with Default Settings

```bash
impressify /path/to/image.png 200
```

### Requirements 📋
- Python >= 3.9
- Pillow >= 11.0.0


## License 📜

Impressify is released under the MIT License. See the LICENSE file for details.