semvec/pypi-packages huggingface dataset:
sdg-flasher 0.8
universal programmer for microcontrollers via bootloader
Requires Python: >=3.6


Универсальный загрузчик ПО в микроконтроллеры:
avr8, 1887ve4u, avr16, 1986ve1t, 1986ve91t, stm32f4

Можно использовать из командной строки:
python -m sdg_flasher -p COM1 -c 500000_O_2 -d ve1t -a 85 -o w -f "ololo.hex"

Пример использования:
-------------
```python
from sdg_io import SdgIO
from sdg_flasher import Flasher

io = SdgIO('COM1', '115200_O_2')
Flasher(io, file='ololo.hex', device='ve1t, opt='wv', addr=b'', rebootcmd='b'').do()
```
shizheng-mcpdemo-server 0.3.0
Sample program used for testing the MCP service
Requires Python: >=3.12

https://www.iotword.com/43377.html
https://zhuanlan.zhihu.com/p/589518357
https://www.ubitools.com/zh/how-to-package-python-project-to-pypi/
https://pypi.org/project/shizheng-mcpdemo-server/
https://www.bilibili.com/video/BV1N4NizuEJU/?spm_id_from=333.1387.favlist.content.click&vd_source=f20c34b282b1636267de38d2b9531d39
json-api-builder 0.3.1
A simple library to build robust REST APIs with automatic CRUD endpoints using FastAPI, SQLModel, and FastCRUD.
Requires Python: >=3.10
Keywords: api, builder, crud, fastapi, fastcrud, rest, sqlmodel

# json-api-builder

**SQLModelベースの、シンプルで堅牢なREST API構築ライブラリ**

`json-api-builder` は、[SQLModel](https://sqlmodel.tiangolo.com/) と [FastCRUD](https://github.com/benavlabs/fastcrud) を活用し、最小限のコードで堅牢なREST APIを簡単に構築するためのPythonライブラリです。

## 設計思想

-   **究極のシンプルさ**: `SQLModel` でモデルを定義し、`AppBuilder` に渡すだけで、データベースとCRUD操作が可能なAPIエンドポイントが自動生成されます。
-   **ベストプラクティスの活用**: 実績のあるライブラリ群を内部で活用することで、利用者は定型コードを書くことなく、堅牢でモダンなアプリケーションを構築できます。

## 主な機能

-   **CRUD APIの自動生成**: `AppBuilder` にモデルを追加するだけで、CRUD操作が可能なエンドポイントが利用可能になります。
-   **柔軟な���キーマ設定**: 作成時と更新時で異なるバリデーションスキーマを適用できます。
-   **JSONからDB生成**: 単一のJSONファイル（配列形式）から、自動採番でデータベースにレコードを生成します。
-   **自動APIドキュメント**: `/docs` でSwagger UIが利用可能。

詳細は以下のドキュメントを参照してください。
-   [**APIリファレンス**](./docs/api_reference.md)
-   [**データベース仕様**](./docs/database.md)

## 使い方

### APIサーバーの構築

`AppBuilder` を使って、モデルからAPIを構築します。

```python
# main.py
from sqlmodel import Field, SQLModel
from json_api_builder import AppBuilder

# 1. モデルを定義する
class HeroBase(SQLModel):
    name: str = Field(index=True)
    secret_name: str
    age: int | None = Field(default=None, index=True)

class Hero(HeroBase, table=True):
    id: int | None = Field(default=None, primary_key=True)

# 作成時用のスキーマ（idは不要）
class HeroCreate(HeroBase):
    pass

# 2. ビルダーを使ってアプリを構築する
builder = AppBuilder(
    db_path="sqlite+aiosqlite:///database.db",
    title="Hero API",
    version="1.0.0"
)

# 3. リソースを追加する
# pathを省略すると、テーブル名から自動的に "/heroes" が設定されます。
builder.add_resource(
    model=Hero,
    create_schema=HeroCreate,
    path="/heroes"
)

# 4. アプリケーションを取得する
app = builder.get_app()
```
**サーバーの起動:**
```bash
uvicorn main:app --reload
```

### JSONからのデータベース生成

`generate_db_from_json_file` 関数は、レコードの配列を含む単一のJSONファイルからデータベースを生成します。
`id` はJSONファイルの内容に関わらず、データベースによって自動的に採番されます。

#### 1. JSONファイルの準備

インポートしたいデータの配列を含むJSONファイル（例: `users.json`）を準備します。
JSONファイル内のオブジェクトに `id` が含まれていても、それは無視されます。

```json
// users.json
[
  { "name": "Alice", "age": 30 },
  { "id": 99, "name": "Bob", "age": 25 },
  { "name": "Charlie", "age": 35 }
]
```

#### 2. 生成スクリプトの作成

```python
# generate_db.py
from sqlmodel import Field, SQLModel
from json_api_builder import generate_db_from_json_file

# データベースに対応するモデルを定義
class User(SQLModel, table=True):
    id: int | None = Field(default=None, primary_key=True)
    name: str
    age: int

# 生成関数を呼び出す
generate_db_from_json_file(
    model=User,
    db_path="generated_database.db",
    json_path="users.json",
    overwrite=True  # Trueにすると、実行時に既存のDBファイルを削除
)

print("✅ データベースの生成が完了しました。")
```
**実行:**
```bash
python generate_db.py
```

## Renderへのデプロイ

（...Renderへのデプロイガイドは変更なし...）

## テスト

```bash
pip install pytest httpx pytest-asyncio
pytest
```