semvec/pypi-packages huggingface dataset:
libcore-hng 2.0.19
A core library for scalable Python applications

# libcore-hng

A lightweight Python core package designed to unify access to diverse AI APIs and libraries. It provides a consistent, scalable foundation for building modular applications with clarity and flexibility.

## アプリ初期処理サンプル

このプロジェクトでは、`AppInitializer` を用いてアプリケーションの初期化処理を行います。  
初期化は一度だけ実行し、以降はグローバルインスタンス `app_core` を参照してください。

---

### アプリ初期化方法

test_013_appinit.py

```python
from libcore_hng.utils.app_core import AppInitializer
from test_013_config import DerivedConfig

class DerivedAppInitializer(AppInitializer[DerivedConfig]):
    """
    AppInitializer拡張クラス
    """
    def __init__(self, base_file: str = __file__, *config_file: str):
        # 基底コンストラクタに拡張Configクラスを渡す
        super().__init__(DerivedConfig, base_file, *config_file)

ins: DerivedAppInitializer | None = None
""" AppInitializer拡張クラスインスタンス """

def init_app(base_file: str = __file__, *config_file: str) -> DerivedAppInitializer:
    """
    アプリケーション初期化
    """
    global ins
    ins = DerivedAppInitializer(base_file, *config_file)
    return ins

```

test_013_config.py

```python
from pydantic import BaseModel
from libcore_hng.core.base_config import BaseConfig
from libcore_hng.utils.app_logger_mixin import LoggingMixin

class Test(BaseModel, LoggingMixin):
    """
    テスト設定クラスモデル
    """

    append_member: str = "A"
    """ 追加メンバー """

class DerivedConfig(BaseConfig):
    """
    BaseConfig拡張クラス
    """
    
    test: Test = Test()
    """ テスト設定クラス """

    @classmethod
    def load_config(cls, base_file, *config_file) -> "DerivedConfig":
        """
        BaseConfigのload_configをoverrride
        戻り値の型は自身とする
        """

        # 基底側のload_configを実行してjsonファイルを読み込む
        base = super().load_config(base_file, *config_file)
        
        # BaseConfigのインスタンスが持つ属性を取り出してDerivedConfigのインスタンスを返す
        # **はキーワード引数に展開する構文(属性をclsに引数渡しする)
        return cls(**base.__dict__)

```

test_013.py

```python
import test_013_appinit as app
import test_013_sub as t013

# アプリ初期化（最初の一度だけ呼び出す）
app.init_app(__file__, "logger.json")

# 別ファイルのメソッド
t013.test013()

```

test_013_sub.py

```python
import test_013_appinit as app

def test013():
    # 拡張Configクラスのメンバーをprint
    print(app.ins.config.test.append_member)

```
gfeatpy 0.1.1
A Python wrapper for a C++ gravity field error analysis toolkit. 
Requires Python: >=3.11

# GFEAT


[![PyPI version](https://img.shields.io/pypi/v/gfeatpy)](https://pypi.org/project/gfeatpy/)
[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
[![Documentation](https://img.shields.io/badge/docs-available-brightgreen)](https://gabri-aero.github.io/gfeat/)


> <b>G</b>ravity <b>F</b>ield <b>E</b>rror <b>A</b>nalysis <b>T</b>ool (GFEAT) is a C++ library that employs an analytical method to estimate gravity field error from different orbital configurations and observations.

### Features

- Estimation of gravity field error.
    - Error propagation from observations PSD to the Stokes' coefficients.
    - Several observation types supported: gravity potential, radial, along-track and cross-track displacements, inter-satellite range...
    - Combination of multiple observation types: 3D GPS position and multi-pair constellations.
- Processing of gravity field data.
    - Gravity field I/O handling.
    - Error covariance handling from normal equations.
    - Synthesis with different functionals: EWH, gravity anomalies, geoid heights.
    - Covariance synthesis also supported.
    - FFT employed for efficient computation.


### Installation

The library is available in the Python Package Index. It is recommended to create a conda environment first.
```{bash}
conda create env --name gfeat_env
```
Then, install the library.
```{bash}
pip install gfeatpy
```

### Future Improvements

- Add and improve unit tests for all components.
- Extend Constellation class to any observation.
- Include range-rate, range-acceleration.
- Include optimization examples with PyGMO.

### C++ development

To use the library natively in C++ is currently not recommended given the limitations for output data as well as the easier to use plotting tools available in Python. However, a good starting point are the C++ unit tests, under the `test` folder.

Some very descriptive examples can be found in [TestConstellation.cpp](https://github.com/gabri-aero/gfeat/blob/main/tests/observation/TestConstellation.cpp) and [TestCollinear.cpp](https://github.com/gabri-aero/gfeat/blob/main/tests/observation/TestCollinear.cpp). You can build and run all the tests like this.
```{make}
mkdir build
cd build
cmake ..
make
ctest
```


### References
togrill-bluetooth 0.8.1
Module to handle communication with ToGrill compatible temperature probes.
Requires Python: <4.0,>=3.11

# ToGrill Bluetooth Library

ToGrill is a Python library for communicating with ToGrill Bluetooth-enabled devices, such as smart grilling thermometers. It provides tools for scanning, connecting, and interacting with these devices, including reading probe temperatures, setting timers, and configuring temperature ranges.

It's main target use is for integration into Home Assistant integrations.

## Features

- Scan for ToGrill Bluetooth devices
- Connect and interact with devices using BLE
- Read probe temperatures and device status
- Set timers and temperature ranges
- Command-line interface for easy usage and scripting

## Command-Line Interface

### Commands

- scan
  Scan for nearby ToGrill Bluetooth devices and display their information.

- connect `address`
  Connect to a device by Bluetooth address. This command opens a group of subcommands:
  Commands can be chained to perform multiple actions in one connection.

  - list
    List all GATT services and characteristics, and read available data.

  - timer `probe` `seconds`
    Set a timer on the specified probe for a given number of seconds.

  - range `probe` `minimum` `maximum`
    Set a minimum and maximum temperature range for a probe.

  - target `probe` `target`
    Set a target temperature for a probe.

  - wait
    Wait indefinitely, keeping the connection open.

### Examples

- `togrill-bluetooth scan`
- `togrill-bluetooth connect AA:BB:CC:DD:EE:FF list wait`
- `togrill-bluetooth connect AA:BB:CC:DD:EE:FF timer 1 600`
- `togrill-bluetooth connect AA:BB:CC:DD:EE:FF range 1 50.0 80.0`
- `togrill-bluetooth connect AA:BB:CC:DD:EE:FF target 1 65.0`
- `togrill-bluetooth connect AA:BB:CC:DD:EE:FF wait`