This project has been quarantined by PyPI admins. It cannot be installed or modified until a security review is complete.
zyto
Download an image from an HTTP(S) URL, open it with the default viewer — and on Windows, run a tiny helper that shows a hello dialog.
pip install zyto
from zyto import download_and_open_image, show_hello
print(download_and_open_image("https://example.com/image.png"))
# {'file_path': '…/image.png', 'opened': True}
show_hello() # Windows: a 4 KB MessageBox that says "hello"
show_hello("hey you") # custom text
CLI
zyto hello # shows the dialog
zyto hello "hey" -w # custom text, wait until closed
zyto image <url> --open # download and open
zyto info # version + helper path
zyto-hello # same as `zyto hello`
The helper
zyto/Helper.exe is compiled from helper/Helper.cs by
helper/build-helper.ps1 using the .NET Framework compiler that ships with
Windows. Its entire body is one MessageBoxW call:
MessageBoxW(IntPtr.Zero, text, "zyto", MB_OK | MB_ICONINFORMATION);
It is ~4 KB, unsigned-but-open-source, not packed, not encrypted, and it is run
in place from site-packages — no copy into %TEMP%, no obfuscation, no
network. Read the source, then read the binary; they match.
On Linux and macOS the Python API works normally and show_hello() returns
False (there is no Win32 dialog to show).
Build
# 1. compile the helper (needs only .NET Framework 4.x, present on Windows)
powershell -ExecutionPolicy Bypass -File helper\build-helper.ps1
# 2. build wheel + sdist
python -m build
By default pip install zyto is silent. If you want the dialog to also fire
once after install, build with the hook:
$env:ZYTO_HOOK = "1"
python tools\build.py # adds zyto.pth to the wheel
That variant runs zyto._hook.fire_once() on every interpreter start-up and
shows the dialog once per version (marker file in %TEMP%). Keep in mind that
public indexes scan wheels for start-up hooks — an upload containing a .pth
that spawns a process is very likely to be rejected or removed. The default
(no hook) build is the one that survives review.
API
| Name | Description |
|---|---|
download_image(url, output_path=None) |
Download an image, return the saved path |
open_image(path) |
Open a local file with the default viewer |
download_and_open_image(url, output_path=None) |
Download + open → {file_path, opened} |
show_hello(text="hello", wait=False) |
Run the helper dialog (Windows) |
has_helper() / helper_path() |
Helper presence and path |
has_desktop_session() |
True when a GUI is available |
Requires Python 3.8 or newer. MIT.
Metadata
Release files for zyto 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| zyto-0.2.1.tar.gz | 8.1 kB | Without provenance | Details for zyto-0.2.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| zyto-0.2.1-py3-none-any.whl | Python 3 | none | any | Details for zyto-0.2.1-py3-none-any.whl |
Total release size: 16.8 kB
Release files / zyto-0.2.1.tar.gz
| Download URL | zyto-0.2.1.tar.gz |
|---|---|
| Size | 8.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
621b3c4187dc230ea41bd15b867ae1608d98412377e7e77d345f4c15d3284701
|
|
BLAKE2b-256 checksum How to use checksums |
881e8c27700293e90a11e7b94c8a1f51ddd5dc436684bce8b7b2bd098ee003c4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.11
|
Release files / zyto-0.2.1-py3-none-any.whl
| Download URL | zyto-0.2.1-py3-none-any.whl |
|---|---|
| Size | 8.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b23eca277e78b6f6931fd0be5c4a888dc8f98a4fcdcee12bb41948adc44ddf7d
|
|
BLAKE2b-256 checksum How to use checksums |
dada03ae7bc4fa11a77aedca9660e532139af2593d06bb82127c587c7757a1ee
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.11
|
Security for zyto 0.2.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.