Python bindings for softcut-lib (the norns softcut DSP engine) with nanobind
Project description
softcut
Python bindings for softcut-lib — the per-voice DSP engine behind monome norns' softcut — with realtime audio I/O via miniaudio. Built with nanobind.
This is not a port of the norns Lua API; it exposes softcut as Python objects.
Concepts
Voicewraps onesoftcut::Voice: a crossfading read/write head over an audio buffer, with rate, loop points, record/play, fades, and pre/post state-variable filters. Parameters are plain attributes; the buffer is a numpyfloat32array you own (softcut-lib never allocates buffer memory). Buffer length must be a power of two — usesoftcut.next_power_of_twoorEngine.allocate, which rounds up for you. The same array can be shared by several voices.Engineis the multi-voice host: it owns a set of voices and a miniaudio device, and runs them either live (realtime mic/speaker I/O on a background audio thread) or offline viaEngine.render. It is a context manager and a sequence of voices.
Live looping
import softcut, time
with softcut.Engine(voices=2) as eng: # opens the audio device
eng.allocate(seconds=8) # shared power-of-two buffer
eng[0].configure(loop_region=(0, 4), rate=1.0, level=0.8, pan=-0.3)
with eng[0].record(at=0): # rec + play on; head cut to 0s
time.sleep(4) # capture 4s of mic input
# on exit: rec off — the voice keeps looping what it captured
eng[1].configure(loop_region=(0, 4), rate=-0.5, level=0.6, pan=0.3)
eng[1].record_for(4, at=0) # blocking variant: record 4s, then stop
time.sleep(8) # listen to both loops
# device closed automatically
eng.start() returns immediately and audio runs on a background thread, so the
REPL stays live — set a parameter and you hear the change on the next block.
record() is the non-blocking context-manager gesture; record_for(seconds)
blocks the calling thread for a fixed capture.
Offline rendering
No device; process a mono numpy block through the voices and get the mixed stereo output back. This is the deterministic path used by the tests:
import numpy as np, softcut
eng = softcut.Engine(voices=1, mode="playback")
v = eng[0]
v.buffer = np.zeros(2**16, dtype=np.float32)
v.configure(loop_region=(0, 1), rate=1.0)
v.rec = v.play = True
v.cut_to(0)
out = eng.render(np.random.randn(48000).astype(np.float32)) # (48000, 2) float32
Load/save audio with whatever you like (e.g. soundfile) and assign the array
to voice.buffer.
Routing and devices
Voices mix to stereo via each voice's level and pan. Engine.feedback(src, dst, amount) routes one voice's output into another's input (one block delayed;
src == dst is a self-feedback delay line), and each voice's input_gain scales
the engine's external (mic) input into it:
eng.feedback(0, 1, 0.4) # voice 0 -> voice 1 input
eng[1].input_gain = 0.0 # voice 1 ignores the mic
Pick a specific device by index from softcut.list_devices():
softcut.list_devices() # [{'index':0,'name':...,'type':'playback',...}, ...]
eng = softcut.Engine(output_device=1, input_device=0)
Build and test
make sync # set up the environment
make test # run the test suite
make qa # test + lint + typecheck + format
Set SOFTCUT_TEST_AUDIO=1 to additionally exercise a real audio device in the
test suite. Use make help for more targets (wheel, sdist, clean, etc.).
Releasing
CI runs QA and a Linux/macOS/Windows build smoke on every push and pull request.
Pushing a v* tag builds wheels for CPython 3.10-3.14 across Linux
(x86_64/aarch64), macOS (x86_64/arm64) and Windows with
cibuildwheel, plus the sdist, and publishes them
to PyPI via trusted publishing. make release bumps the version and creates the
tag; pushing it triggers the release. (TestPyPI is available via the workflow's
manual workflow_dispatch.)
Notes
- Realtime parameter updates are safe: while the device is running, voice DSP
parameter changes from Python are enqueued and applied on the audio thread via
a lock-free queue rather than racing it. (The mix scalars
level/pan/input_gainand the feedback matrix are plain aligned writes.) - The vendored
softcut-libcarries small host-portability fixes (uninitialized members that relied on embedded zero-init static storage, and an oversized debug buffer stubbed out); see the comments inthirdparty/softcut-lib.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file softcut_py-0.1.0-cp314-cp314-win_amd64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp314-cp314-win_amd64.whl
- Upload date:
- Size: 154.0 kB
- Tags: CPython 3.14, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
978267bd1561ce9199d1795697e45042973054643f60666004d10f35f9aff5d6
|
|
| MD5 |
6f1f7eee1763ed952e4a0915ea6e8123
|
|
| BLAKE2b-256 |
28a82dbe7f3657519b7b3c253ede7bd9032e564ede8f7f09a08ee576c74bc92a
|
File details
Details for the file softcut_py-0.1.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 231.7 kB
- Tags: CPython 3.14, manylinux: glibc 2.27+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
553ae3d5b946c055d955ff561ffb0d5914dcd9bf2fa187525bbdbffe451675f9
|
|
| MD5 |
c3f7637532cbba05bae196324f526ded
|
|
| BLAKE2b-256 |
60bc4930293ec00a5b34fd9cf9f0c277eb5621e179eddb077a57e86ded24be29
|
File details
Details for the file softcut_py-0.1.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 221.3 kB
- Tags: CPython 3.14, manylinux: glibc 2.27+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8b41c8f933b6d9f76527375e23b6be7590e8682266a5d6dcef6410b928178040
|
|
| MD5 |
27380bb1781573f0f77409344c773776
|
|
| BLAKE2b-256 |
89540eccbf691c8a00083b175c453c3dda0a996ba0984f6837377b6bfc8426b1
|
File details
Details for the file softcut_py-0.1.0-cp314-cp314-macosx_11_0_arm64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp314-cp314-macosx_11_0_arm64.whl
- Upload date:
- Size: 198.2 kB
- Tags: CPython 3.14, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e4b1f8a2d329829c4d85dc905e803944bf1ddde78c878e046018f42f8fa3adae
|
|
| MD5 |
d2c14c08b1ab3b867f8ac5741198c5ba
|
|
| BLAKE2b-256 |
cd882ba3777395be07e6df3b12f74024242e0614fecf52df150c632d94047c41
|
File details
Details for the file softcut_py-0.1.0-cp314-cp314-macosx_10_15_x86_64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp314-cp314-macosx_10_15_x86_64.whl
- Upload date:
- Size: 212.8 kB
- Tags: CPython 3.14, macOS 10.15+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
67f36cd9c04c2a1174d61fa3d106698627bb77b3017e26327fa5955e3374a5a1
|
|
| MD5 |
78ec65e6629dd97534bf62e3c6dd768e
|
|
| BLAKE2b-256 |
50963546895127638630759333c803e3e324fcab81e84a15e734a2535e2b730f
|
File details
Details for the file softcut_py-0.1.0-cp313-cp313-win_amd64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp313-cp313-win_amd64.whl
- Upload date:
- Size: 149.3 kB
- Tags: CPython 3.13, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dace79b320eebe573893250855a59140b7414d4e763dee1210a903f9794c605d
|
|
| MD5 |
3d4ed2ef4e4826bba3d8db3969d70c70
|
|
| BLAKE2b-256 |
247f94ac64706f8e43a294f7fb14586078d63c6f202947d2e406761cc702f69a
|
File details
Details for the file softcut_py-0.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 231.6 kB
- Tags: CPython 3.13, manylinux: glibc 2.27+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
44ba4c1642ce362052695fcc2266a61d7820d4d62f14a05f5b388d9f6f590d6b
|
|
| MD5 |
1431f6f577d441410e85015a16dc8f96
|
|
| BLAKE2b-256 |
bd3d71ed4a3e530bb6a1fcb13cb20b69b361330dcfdf90fdc2849c31c3c547e2
|
File details
Details for the file softcut_py-0.1.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 221.0 kB
- Tags: CPython 3.13, manylinux: glibc 2.27+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fc54c70b6d8bd3a61a88af18c81b668694a3db5c50b92980debe72403367f40c
|
|
| MD5 |
12d7023096fb14af2c503fbb2b84ad8b
|
|
| BLAKE2b-256 |
48b9b040093c15f1703da6d34383b6331b4819f4e031b636bff540e9e9859d3e
|
File details
Details for the file softcut_py-0.1.0-cp313-cp313-macosx_11_0_arm64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp313-cp313-macosx_11_0_arm64.whl
- Upload date:
- Size: 198.1 kB
- Tags: CPython 3.13, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
46f3fae066f7ce1e3d6e7cf2c7cf294af86f257991b6124c42550735ef0253b3
|
|
| MD5 |
5a29162dcd2320f14e3fd7bbd4cac1a8
|
|
| BLAKE2b-256 |
a570ef77ae5f0d7c54d079f1a45f328639d562945a8b6c6395cad9bf02aed498
|
File details
Details for the file softcut_py-0.1.0-cp313-cp313-macosx_10_14_x86_64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp313-cp313-macosx_10_14_x86_64.whl
- Upload date:
- Size: 212.5 kB
- Tags: CPython 3.13, macOS 10.14+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a0f584f3d40ba10b5ed2f4847caee9ae72523d96e350e659510cf910040cdc1a
|
|
| MD5 |
bc810f3089c0865101a22ece74d99196
|
|
| BLAKE2b-256 |
3a7c0bc5f623bad47572492816511994a40c24089bf464da220af7527c90b70a
|
File details
Details for the file softcut_py-0.1.0-cp312-cp312-win_amd64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp312-cp312-win_amd64.whl
- Upload date:
- Size: 149.4 kB
- Tags: CPython 3.12, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b44d7816ee3f199fe6576810a96c50baa9c93d02c4becc44413cedcb6cb5303b
|
|
| MD5 |
50c0c64b8cb57ceaec9a462880b55d43
|
|
| BLAKE2b-256 |
0fa7635c806c091cd4564d6475c9f785eccc3f03244e91ec8a38472c7929c260
|
File details
Details for the file softcut_py-0.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 231.6 kB
- Tags: CPython 3.12, manylinux: glibc 2.27+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1fc5ffe9078fe38e640eefdbff6f787f4e9a87d870a9dcb566d35230d176f596
|
|
| MD5 |
e8b57ef4baa33a7195ff7854eee0ea2b
|
|
| BLAKE2b-256 |
ac2838a4e8befcf75792007eaea276d57850cb19dffe0dbe650839ea4fd06607
|
File details
Details for the file softcut_py-0.1.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 221.2 kB
- Tags: CPython 3.12, manylinux: glibc 2.27+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c33269a4efe66c31359316a2ffc6c86e0d06bc92c4a64224fa5e39722c77cff8
|
|
| MD5 |
336edda378a741077bbae3d49e04b7ad
|
|
| BLAKE2b-256 |
51e3c7db0cfef3aa0e02ddeaed2117baddcc6841aed79be846c0cd0440c812f5
|
File details
Details for the file softcut_py-0.1.0-cp312-cp312-macosx_11_0_arm64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp312-cp312-macosx_11_0_arm64.whl
- Upload date:
- Size: 198.1 kB
- Tags: CPython 3.12, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9d7e65267decbc9c61f4c649e07204fcad5f4e5d298bae6e08829c1228c19eea
|
|
| MD5 |
3525f635c8507c680c1a7c41321d1a6f
|
|
| BLAKE2b-256 |
886c52a2211e36216ddbbdef1a705ce73a8b1d33f8fc099561a40da83d510421
|
File details
Details for the file softcut_py-0.1.0-cp312-cp312-macosx_10_14_x86_64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp312-cp312-macosx_10_14_x86_64.whl
- Upload date:
- Size: 212.5 kB
- Tags: CPython 3.12, macOS 10.14+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dc37343459bf5ba92fe40e2f7a1209b2d4d0a971fde680281c4f79bc3a53df39
|
|
| MD5 |
9cb4791eaf61fae080dd9a0b0940f3d0
|
|
| BLAKE2b-256 |
d93a6b095034c24a74dedd3b5350fd92edb8780e8e141031f43ed3217e71a19a
|
File details
Details for the file softcut_py-0.1.0-cp311-cp311-win_amd64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp311-cp311-win_amd64.whl
- Upload date:
- Size: 149.9 kB
- Tags: CPython 3.11, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
01c7cd37321a325669f51985016d0d39ec4b10a752ea83529a076263a6cd59a5
|
|
| MD5 |
56114f1e681eb65c89f48353f1687c10
|
|
| BLAKE2b-256 |
ff1d093cfcc8f65a323e645cb911540ee273f98d966b4b1ec3a5e1875887f788
|
File details
Details for the file softcut_py-0.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 232.8 kB
- Tags: CPython 3.11, manylinux: glibc 2.27+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fbb231fdeb5ef3b640e9880426c440a62c13c15e8d48cbe80e13ca9584e1fd7d
|
|
| MD5 |
2a8707e0935ffd00423f84d42fd87e77
|
|
| BLAKE2b-256 |
5846283ab278b5172183e3c2e065453fe7fbac622d05724e727f8287d12bd653
|
File details
Details for the file softcut_py-0.1.0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 222.1 kB
- Tags: CPython 3.11, manylinux: glibc 2.27+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ccc81613204e0fc68cfc47bf0ce42d74d1f268a065cef93b133a4c75d56b39df
|
|
| MD5 |
50eb57a7d1f7e9272523a524b25eaaeb
|
|
| BLAKE2b-256 |
720344b4e8b45a15c1964a45e1fa568da176f036cf7d02c4cc977ad9db1adcd6
|
File details
Details for the file softcut_py-0.1.0-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 199.3 kB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aa916fad0a4868f2fcb977ac224b5a99e061c25b8f6b6185395ffa1908d6cd0a
|
|
| MD5 |
8352e99943ea184c971063016fb1bc23
|
|
| BLAKE2b-256 |
0ca7e22f72dcd86dc57b59d47d28a79bc6f0ed43c8ed095bc9f4655c48be07f0
|
File details
Details for the file softcut_py-0.1.0-cp311-cp311-macosx_10_14_x86_64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp311-cp311-macosx_10_14_x86_64.whl
- Upload date:
- Size: 213.6 kB
- Tags: CPython 3.11, macOS 10.14+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d5c44096f35b2269d264f44ee8d47f86c6f5eb661f7c7adb52500acec6cabacf
|
|
| MD5 |
5375f5da4d1040060072cc3b4bea03db
|
|
| BLAKE2b-256 |
9fdcadd6921e016043eb7f0ce32a3ad4d62f43921dac30a25c5b9023fdae1f91
|
File details
Details for the file softcut_py-0.1.0-cp310-cp310-win_amd64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp310-cp310-win_amd64.whl
- Upload date:
- Size: 150.1 kB
- Tags: CPython 3.10, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6c15a4ff830503f84c9ec29c167019cfbdcc76406ff6b0a45f2f70977470162e
|
|
| MD5 |
9b71577b4164ca2d61cc72b46e099d39
|
|
| BLAKE2b-256 |
741ad903f89f8702b8d600e79c20b3f3f9bc506404f30b9ba86b8782d7398648
|
File details
Details for the file softcut_py-0.1.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 233.3 kB
- Tags: CPython 3.10, manylinux: glibc 2.27+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e1823264d258e5a895313e0327eacffaa2b4c508a401ac58040a5d52964e1524
|
|
| MD5 |
61012a1783c1766fe720972c2a15ca24
|
|
| BLAKE2b-256 |
8dd4e679a941ef38ccc216cc402854b5295199186c157bf883a52810ec4600de
|
File details
Details for the file softcut_py-0.1.0-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 222.5 kB
- Tags: CPython 3.10, manylinux: glibc 2.27+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5873281c54c206bf766a7915fc92a356844716ea291399977a7a867091d35f1d
|
|
| MD5 |
37ab2ef92084f219d663d111a2adb901
|
|
| BLAKE2b-256 |
4b8ce499b16e30cf3998684118a4d5beae05c7dca2e4ebbf9132aca28b72d56f
|
File details
Details for the file softcut_py-0.1.0-cp310-cp310-macosx_11_0_arm64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp310-cp310-macosx_11_0_arm64.whl
- Upload date:
- Size: 199.7 kB
- Tags: CPython 3.10, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c24753ef81187311b845f97ac31a8403851d0d967cbe276629b77a6f71458c6a
|
|
| MD5 |
32fc45cf2491f023573132965fb33338
|
|
| BLAKE2b-256 |
0337db995566cdc48c1a2ed943af74ccd64af1f6115806a3b2913b7deb3f0505
|
File details
Details for the file softcut_py-0.1.0-cp310-cp310-macosx_10_14_x86_64.whl.
File metadata
- Download URL: softcut_py-0.1.0-cp310-cp310-macosx_10_14_x86_64.whl
- Upload date:
- Size: 213.9 kB
- Tags: CPython 3.10, macOS 10.14+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
573df3f6a8a5fa1d0cb86d2706533502ae89e6a632bca0281387b9228353647b
|
|
| MD5 |
6e347ea7e931a3dff0f1830b4c38bb21
|
|
| BLAKE2b-256 |
59e3dc77f722fb2192cd9b43fa959d919041b19e2a3b686b75754a6692be1123
|