Metadata-Version: 2.4
Name: iints-sdk-python35
Version: 1.5.32
Summary: A pre-clinical Edge-AI SDK for diabetes management validation.
Author-email: Rune Bobbaers <rune.bobbaers@gmail.com>
License-Expression: Apache-2.0
Project-URL: Homepage, https://github.com/python35/IINTS-SDK
Project-URL: Documentation, https://python35.github.io/IINTS-SDK/
Project-URL: Repository, https://github.com/python35/IINTS-SDK
Project-URL: Issues, https://github.com/python35/IINTS-SDK/issues
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Operating System :: OS Independent
Classifier: Development Status :: 5 - Production/Stable
Requires-Python: <3.15,>=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
License-File: NOTICE
License-File: LICENSE-MIT-IINTS-LEGACY
Requires-Dist: certifi>=2024.2.2
Requires-Dist: cryptography<50.0.0,>=48.0.1
Requires-Dist: defusedxml<1.0.0,>=0.7.1
Requires-Dist: fastapi!=0.136.3,<0.139.1,>=0.115.0
Requires-Dist: numpy<3.0.0,>=1.24.0
Requires-Dist: pandas<3.0.0,>=2.0.0
Requires-Dist: pydantic<3.0.0,>=2.0.0
Requires-Dist: PyYAML<7.0.0,>=6.0.0
Requires-Dist: rich<16.0.0,>=12.0.0
Requires-Dist: scipy<2.0.0,>=1.9.0
Requires-Dist: starlette<2.0.0,>=1.3.1
Requires-Dist: typer<1.0.0,>=0.9.0
Requires-Dist: uvicorn<1.0.0,>=0.30.0
Provides-Extra: edge
Requires-Dist: pyserial<4.0,>=3.5; extra == "edge"
Provides-Extra: reports
Requires-Dist: fpdf2<3.0.0,>=2.8.0; extra == "reports"
Requires-Dist: matplotlib<4.0.0,>=3.5.0; extra == "reports"
Requires-Dist: openpyxl<4.0.0,>=3.0.0; extra == "reports"
Requires-Dist: pillow<13.0.0,>=12.3.0; extra == "reports"
Requires-Dist: SciencePlots<3.0.0,>=2.1.0; extra == "reports"
Requires-Dist: seaborn<1.0.0,>=0.11.0; extra == "reports"
Provides-Extra: full
Requires-Dist: fpdf2<3.0.0,>=2.8.0; extra == "full"
Requires-Dist: matplotlib<4.0.0,>=3.5.0; extra == "full"
Requires-Dist: openpyxl<4.0.0,>=3.0.0; extra == "full"
Requires-Dist: pyserial<4.0,>=3.5; extra == "full"
Requires-Dist: pillow<13.0.0,>=12.3.0; extra == "full"
Requires-Dist: SciencePlots<3.0.0,>=2.1.0; extra == "full"
Requires-Dist: seaborn<1.0.0,>=0.11.0; extra == "full"
Provides-Extra: dev
Requires-Dist: pytest<10.0.0,>=7.0.0; extra == "dev"
Requires-Dist: hypothesis<7.0.0,>=6.0.0; extra == "dev"
Requires-Dist: flake8<8.0.0,>=7.0.0; extra == "dev"
Requires-Dist: httpx<1.0.0,>=0.27.0; extra == "dev"
Requires-Dist: mypy<3.0.0,>=1.8.0; extra == "dev"
Requires-Dist: pandas-stubs<3.0.0,>=2.0.0; extra == "dev"
Requires-Dist: types-PyYAML<7.0.0,>=6.0.0; extra == "dev"
Requires-Dist: types-psutil<8.0.0,>=7.0.0; extra == "dev"
Provides-Extra: torch
Requires-Dist: torch<3.0.0,>=2.13.0; extra == "torch"
Provides-Extra: nightscout
Requires-Dist: aiohttp<4.0.0,>=3.14.1; extra == "nightscout"
Requires-Dist: py-nightscout; extra == "nightscout"
Provides-Extra: research
Requires-Dist: torch<3.0.0,>=2.13.0; extra == "research"
Requires-Dist: pyarrow<25.0.0,>=12.0.0; extra == "research"
Requires-Dist: h5py<4.0.0,>=3.10.0; extra == "research"
Requires-Dist: onnx<2.0.0,>=1.22.0; extra == "research"
Requires-Dist: onnxscript<1.0.0,>=0.1.0; extra == "research"
Requires-Dist: plotly<7.0.0,>=5.18.0; extra == "research"
Provides-Extra: mechanistic
Requires-Dist: libroadrunner<3.0.0,>=2.9.2; extra == "mechanistic"
Provides-Extra: fmi
Requires-Dist: FMPy<0.4.0,>=0.3.30; extra == "fmi"
Provides-Extra: mdmp
Requires-Dist: cryptography<50.0.0,>=48.0.1; extra == "mdmp"
Provides-Extra: desktop
Requires-Dist: pyinstaller<7.0.0,>=6.11.0; extra == "desktop"
Requires-Dist: setuptools<84.0.0,>=83.0.0; extra == "desktop"
Requires-Dist: PySide6<7.0.0,>=6.7.0; extra == "desktop"
Requires-Dist: plotly<7.0.0,>=5.18.0; extra == "desktop"
Provides-Extra: desktop-qt
Requires-Dist: pyinstaller<7.0.0,>=6.11.0; extra == "desktop-qt"
Requires-Dist: setuptools<84.0.0,>=83.0.0; extra == "desktop-qt"
Requires-Dist: PySide6<7.0.0,>=6.7.0; extra == "desktop-qt"
Requires-Dist: plotly<7.0.0,>=5.18.0; extra == "desktop-qt"
Provides-Extra: desktop-macos
Requires-Dist: pyinstaller<7.0.0,>=6.11.0; extra == "desktop-macos"
Requires-Dist: setuptools<84.0.0,>=83.0.0; extra == "desktop-macos"
Requires-Dist: pyobjc-framework-Cocoa<13.0,>=10.0; extra == "desktop-macos"
Provides-Extra: desktop-all
Requires-Dist: FMPy<0.4.0,>=0.3.30; extra == "desktop-all"
Requires-Dist: SciencePlots<3.0.0,>=2.1.0; extra == "desktop-all"
Requires-Dist: fpdf2<3.0.0,>=2.8.0; extra == "desktop-all"
Requires-Dist: h5py<4.0.0,>=3.10.0; extra == "desktop-all"
Requires-Dist: libroadrunner<3.0.0,>=2.9.2; extra == "desktop-all"
Requires-Dist: matplotlib<4.0.0,>=3.5.0; extra == "desktop-all"
Requires-Dist: onnx<2.0.0,>=1.22.0; extra == "desktop-all"
Requires-Dist: onnxscript<1.0.0,>=0.1.0; extra == "desktop-all"
Requires-Dist: openpyxl<4.0.0,>=3.0.0; extra == "desktop-all"
Requires-Dist: pillow<13.0.0,>=12.3.0; extra == "desktop-all"
Requires-Dist: plotly<7.0.0,>=5.18.0; extra == "desktop-all"
Requires-Dist: pyarrow<25.0.0,>=12.0.0; extra == "desktop-all"
Requires-Dist: pyinstaller<7.0.0,>=6.11.0; extra == "desktop-all"
Requires-Dist: pyobjc-framework-Cocoa<13.0,>=10.0; platform_system == "Darwin" and extra == "desktop-all"
Requires-Dist: pyserial<4.0,>=3.5; extra == "desktop-all"
Requires-Dist: PySide6<7.0.0,>=6.7.0; extra == "desktop-all"
Requires-Dist: seaborn<1.0.0,>=0.11.0; extra == "desktop-all"
Requires-Dist: setuptools<84.0.0,>=83.0.0; extra == "desktop-all"
Requires-Dist: torch<3.0.0,>=2.13.0; extra == "desktop-all"
Dynamic: license-file

# IINTS-AF SDK

[![EUCYS 2026](https://img.shields.io/badge/EUCYS-2026%20Selected-gold?style=flat)](https://www.uni-kiel.de/en/eucys2026)
[![PyPI version](https://badge.fury.io/py/iints-sdk-python35.svg)](https://badge.fury.io/py/iints-sdk-python35)
[![CI](https://github.com/python35/IINTS-SDK/actions/workflows/python-package.yml/badge.svg)](https://github.com/python35/IINTS-SDK/actions/workflows/python-package.yml)
[![Docs](https://img.shields.io/badge/docs-IINTS--AF-0a66c2?style=flat)](https://python35.github.io/IINTS-SDK/)

IINTS-AF is an open-source research SDK for diabetes technology simulation.

The SDK lets researchers, students, and developers test diabetes-algorithm ideas in a virtual environment. It can simulate digital patients, meals, insulin delivery, CGM/sensor behavior, safety checks, glucose-prediction experiments, and generated reports.

The purpose of IINTS-AF is to make algorithm behavior easier to inspect and discuss before anything is connected to a real person.

IINTS-AF is not a medical device. It must not be used for diagnosis, insulin dosing, treatment decisions, or real-time patient care.

## Links

- Website: [iints.org](https://iints.org)
- Documentation: [python35.github.io/IINTS-SDK](https://python35.github.io/IINTS-SDK/)
- Rust research workbench: [latest beta](https://github.com/python35/IINTS-SDK/releases/tag/tauri-beta-latest)
- Classic desktop app: [latest Qt beta](https://github.com/python35/IINTS-SDK/releases/tag/desktop-beta-latest)

## Rust Research Workbench

The new native research workbench uses a Rust/Tauri security boundary around the Python scientific engine. It provides guided simulation workflows, result inspection, reproducibility records, local Ollama review, MDMP evidence tools, and audited research connectors.

Current Rust/Tauri beta downloads:

| Platform | Download |
| --- | --- |
| Windows | [`.exe` installer](https://github.com/python35/IINTS-SDK/releases/download/tauri-beta-latest/IINTS-AF-Research-Workbench-windows-x64-setup.exe) |
| macOS | [`.dmg`](https://github.com/python35/IINTS-SDK/releases/download/tauri-beta-latest/IINTS-AF-Research-Workbench-macos.dmg) |
| Linux | [`.AppImage`](https://github.com/python35/IINTS-SDK/releases/download/tauri-beta-latest/IINTS-AF-Research-Workbench-linux-x64.AppImage) |

The beta delegates scientific operations to the IINTS-AF Python engine. On first launch, choose
**Install Python engine** if the bridge is unavailable; the app creates a private engine and keeps
its setup visible in a terminal.

See the [Tauri workbench documentation](https://python35.github.io/IINTS-SDK/TAURI_DESKTOP/) for architecture, security boundaries, and development instructions.

## Classic Desktop App

IINTS-AF also has a native Qt desktop app for running demos, reviewing results, certifying data, and using the research workbench without memorising terminal commands. The packaged Windows, macOS, and Linux betas include their Python runtime and supported Python-side research engines.

Current beta downloads:

| Platform | Download |
| --- | --- |
| Windows | [`.exe`](https://github.com/python35/IINTS-SDK/releases/download/desktop-beta-latest/IINTS-AF-Desktop-Beta-windows-x64.exe) |
| macOS | [`.dmg`](https://github.com/python35/IINTS-SDK/releases/download/desktop-beta-latest/IINTS-AF-Desktop-Beta-macos.dmg) |
| Linux | [executable](https://github.com/python35/IINTS-SDK/releases/download/desktop-beta-latest/IINTS-AF-Desktop-Beta-linux-x64) |

Python install, including the PySide6 desktop runtime:

```bash
python -m pip install -U "iints-sdk-python35[desktop-all]"
iints-desktop
```

## License

Apache-2.0 licensed, with legacy MIT notices where applicable.
