Metadata-Version: 2.4
Name: ikkToolKit
Version: 0.0.0
Summary: Insight.k.k. ToolKit for easy application development
Author-email: "Insight.k.k. Team" <maintainer@insightkk.net>
License-Expression: MIT
Project-URL: Homepage, https://insightkk.net/oss/ikkToolKit
Project-URL: Documentation, https://insightkk.net/oss/ikkToolKit/api/index.html
Project-URL: Issues, https://github.com/Insight-kk/ikkToolKit/issues
Project-URL: Repository, https://github.com/Insight-kk/ikkToolKit
Keywords: framework,toolkit,async,serial,network
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: System :: Hardware
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: cantok>=0.0.1
Requires-Dist: asyncio-cancel-token>=0.2.0
Requires-Dist: pyserial>=3.5
Requires-Dist: keyboard>=0.13.0
Requires-Dist: qrcode[pil]>=8.0
Dynamic: license-file

# ikkToolKit

Insight.k.k. による Insight Production開発向けPython ネットワーク・デバイス通信ツールキット

## 概要

UT装置の周辺デバイスやハードウェア制御を伴うアプリケーション開発を効率化するための統合ツールキット。シリアル通信、TCP/IP、HID入力、QRコード生成、XML設定管理など、組み込みシステム開発に必要な機能を提供します。

**Python 3.10 以上対応**

## 主なモジュール

### ComPort - シリアル通信

- **SerialBase**: シリアルポート通信の基本クラス
- **SerialReceiver**: バーコードリーダー対応の受信特化クラス（接続監視・自動再接続機能）

### HID - HID入力デバイス

- **HidCodeReader**: キーボード入力によるバーコード読み取り（プレフィックス・サフィックスにより対応）

### Tcp - TCP/IPサーバー

- **TcpServerBase**: 非同期マルチクライアント対応のTCPサーバー基底クラス
- **ModbusTcpSlave**: Modbusプロトコル対応のTCPスレーブ実装

### Lookup - CSV参照

- [CsvLookup](doc/Lookup.md): CSVファイルを使用したキー・バリュー検索

### QrCode - QRコード生成

- **QrCodeBase**: 文字列からPIL画像形式のQRコード生成

### Setting - 設定管理

- **XmlSettingBase**: XML設定ファイルの読み込み・管理
- **SettingEditor**: Tkinterベースの設定編集GUI

### FileSelector - ファイル選択

- [CsvLookup](doc/FileSelector.md): ファイル選択ダイアログを

## 主な機能

- 🔌 **非同期ネットワーク通信**: asyncio を活用したマルチクライアント対応
- 📡 **シリアル通信**: 自動接続・再接続機能付き
- ⚙️ **設定管理**: XML形式による柔軟な設定の読み込み・編集
- 🏷️ **バーコード処理**: QRコード生成、シリアル/HID入力対応
- 📊 **Modbus対応**: Modbus TCP レジスタ操作

## インストール

```bash
pip install ikkToolKit
```

## リンク

- [公式ページ](https://insightkk.net/oss/ikkToolKit)
- [APIドキュメント](https://insightkk.net/oss/ikkToolKit/api/index.html)
- [GitHub リポジトリ](https://github.com/Insight-kk/ikkToolKit)
- [Issues](https://github.com/Insight-kk/ikkToolKit/issues)

## ライセンス

MIT License
