Skip to main content

GUI toolbox for the ZX Spectrum Next: SD-card/HDF image explorer, NextSync Wi-Fi file sync + Remote Explorer & HTTP bridge, and built-in software browsing via GetIt, ZXDB and zxArt

Project description

ZX-Next-Unite

Cross-platform (Windows, Linux, macOS) desktop app for ZX Spectrum Next users. It unites two great tools — Hdfm-Gooey and NextSync — in a single GUI, and adds a built-in browser to discover ZX Spectrum / Spectrum Next software across GetIt, ZXDB/ZXInfo, zxArt and itch.io.

By Julien Clauzel, based on HDFM-GOOEY by em00k and NextSync by Jari Komppa (with the Sync4 extensions by Julien Clauzel).

Co-developed with the assistance of Claude (Anthropic's AI).

A tour of the ZX-Next-Unite tabs

The main tabs, in Retro mode: SD Card Utility · NextSync (classic sync, then the Remote Explorer) · GetIt · ZXArt.ee · ZXDB/ZXInfo.dk · Unite! · Alien Floyd's. Every tab is documented in the User Manual.

Features

  • SD Card tab — mount an HDF image, copy files in/out with a built-in explorer, then launch CSpect or MAME directly. No emulator command lines to remember.
  • NextSync tab — push files over Wi-Fi from your PC to a real Spectrum Next (KS1/KS2 or clones with an ESP module) using the .sync5 dot command.
  • Remote Explorer — a two-pane file manager for your Next's real filesystem over Wi-Fi: browse, drag & drop, upload/download and manage files (new folder, delete) directly — no SD-card swapping. Run .sync5 -listen on the Next to connect, and launch the app with the -start-remote-explorer-listener switch to have the listen server running from startup with no clicks. See the Wiki.
  • HTTP bridge — remote access to a Next's file system over plain HTTP: a built-in web server (Flask) republishes the Remote Explorer's -listen session as HTTP routes, so you can browse, download, upload and manage the Next's SD card from a browser, curl — or from another Next using the built-in .http dot command. Enable it in the Settings tab (the port — 80 by default — is set in the box next to the toggle). See the HTTP bridge documentation.
  • Online libraries — search and download from GetIt, ZXDB/ZXInfo, zxArt and (optionally) itch.io.

Quick start

Windows: download the latest zx-next-unite-v9.x.x.exe from the Releases page — no Python needed.

Linux (x86_64): download zx-next-unite-v9.x.x-linux-x86_64.tar.gz from the same page, extract it and run the binary inside.

macOS (Apple Silicon): download zx-next-unite-v9.x.x-macos-arm64.zip, extract it and start the app. The app is not code-signed, so the first launch needs right-click → Open (or xattr -cr on the .app) to get past Gatekeeper.

All three packages are built by CI from the tagged source (release workflow), and the app's built-in update check offers the right package for your platform when a newer release is published.

Via pipx (any platform, from PyPI):

pipx install "zx-next-unite[full]"

installs the zx-next-unite command (plus the nextsync5 command-line sync server) in its own isolated environment — one line, no repo checkout. Drop [full] to skip the optional extras (retro pygame views, itch.io tab, Recycle-Bin deletes, HTTP bridge).

From source (any platform):

git clone https://github.com/jclauzel/ZX-Next-Unite
cd ZX-Next-Unite
python -m pip install -r REQUIREMENTS.txt
python zx-next-unite.py

Requires Python 3.10 or newer (the stock Python of Ubuntu 22.04 / Debian 12 and later works out of the box; CI runs the test suite on 3.10 and 3.13). Use python3 on Linux/macOS. Only PySide6 is required; pygame-ce, itch-dl and flask are optional (flask powers the NextSync HTTP bridge — the web server that lets a Next drive another Next's SD card via the .http dot command; without it the Settings toggle is simply greyed out).

Documentation

Full setup, emulator / hdfmonkey / Mono configuration and troubleshooting are in the Wiki:

License

Released under the MIT license (see LICENSE). Built on PySide6 (Qt for Python, LGPL v3) and optionally pygame-ce (LGPL v2.1), itch-dl by Dragoon Aethis (MIT), Flask by the Pallets team (BSD-3-Clause), the web server that powers the NextSync HTTP bridge, and Send2Trash by Andrew Senetar and contributors (BSD-3-Clause), which sends locally-deleted files to the system Recycle Bin / Trash.

Provenance and license details for every third-party component — including NextSync (Jari Komppa, Unlicense), HDFM-Gooey (em00k), hdfmonkey (GPL v3), CSpect and MAME — are in THIRD-PARTY-NOTICES.md.

Legal disclaimer — third-party content

The author of ZX-Next-Unite does NOT distribute any files, ROMs, games, demos, graphics, music, or any other content obtained through the GetIt, ZXDB, or zxArt integrations.

All content is served exclusively by the respective third-party services listed above. ZX-Next-Unite acts solely as a frontend client that queries their public APIs and downloads files directly from the URLs those APIs return.

It is the sole responsibility of the end user to ensure that any content they download or use through this application complies with the applicable copyright, licensing, and legal requirements in their jurisdiction.

If in doubt, consult the terms of service of the relevant platform and seek appropriate legal advice before downloading or using any content.

The first time you open the GetIt, ZXDB, or zxArt pane, the application will display this disclaimer and ask you to acknowledge it. You can dismiss the dialog to continue using the pane; the dialog will reappear on the next visit until you check "I agree and understand. Do not show this message again", at which point your acknowledgement is saved to hdfg.cfg and the dialog will not be shown again.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zx_next_unite-9.1.9.tar.gz (38.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

zx_next_unite-9.1.9-py3-none-any.whl (40.0 MB view details)

Uploaded Python 3

File details

Details for the file zx_next_unite-9.1.9.tar.gz.

File metadata

  • Download URL: zx_next_unite-9.1.9.tar.gz
  • Upload date:
  • Size: 38.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for zx_next_unite-9.1.9.tar.gz
Algorithm Hash digest
SHA256 6459d9c340dcf53f54ad8197f18a7005625ce159d8f6717c3f59fdece353e6d0
MD5 c995f9af20bbeb77bf73c053976155cf
BLAKE2b-256 18450cf1a64b0eb7206fa9b0fbaad752b27f96719b7bfc3ab2286edba6676baf

See more details on using hashes here.

Provenance

The following attestation bundles were made for zx_next_unite-9.1.9.tar.gz:

Publisher: publish.yml on jclauzel/ZX-Next-Unite

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file zx_next_unite-9.1.9-py3-none-any.whl.

File metadata

  • Download URL: zx_next_unite-9.1.9-py3-none-any.whl
  • Upload date:
  • Size: 40.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for zx_next_unite-9.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 956d9eb0a2b77204ab2f64da235d2e4ee385bc4608105bd09f9a15f1ecc40438
MD5 ba000cc8ba95a101d0a2acd284a5fc0a
BLAKE2b-256 6011d63b07965f49098d8741aaf61dd9f13b547fc3ef4009ddb8585382a42a63

See more details on using hashes here.

Provenance

The following attestation bundles were made for zx_next_unite-9.1.9-py3-none-any.whl:

Publisher: publish.yml on jclauzel/ZX-Next-Unite

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page