Skip to main content

Frontispiece and title page. Left: an engineering drawing of the pipe flange of examples/flange.py — a 120 mm plate with a 70 mm neck, bored 50 mm through, eight 10 mm bolt holes on a 95 mm circle — in section A–A, the view from the left and the plan in first-angle projection, dimensioned, with a title block that gives the volume smlibpy measures. Right: smlib·py, or, the Art of Modelling in Python — wherein the SMLib kernel is given to Python: to build exact parts from short scripts, to draw what it has built, and to prove the work in numbers. In four parts: the library, the renderer, the MCP server, the skill. MMXXVI.

smlibpy

A Python library for 3D modeling on the SMLib NURBS kernel with an API inspired by cadquery and build123d.

It comes with an MCP server, so your agent can build parts too. And it runs in the browser: smlibwasm is the same library for JavaScript and TypeScript, on the kernel compiled to WebAssembly.

Website · Documentation · Getting started · API reference · For agents · JavaScript

from smlibpy import *

plate = Box(80, 60, 10)
plate = plate.fillet(plate.edges().parallel_to(Z), 8)
plate -= GridLocations(60, 40, 2, 2) * Cylinder(4, 10)
plate -= Rectangle(30, 20).on(plate.faces().top()).extrude(-4)

plate.export("plate.step")
show(plate)

Parts are B-reps with exact surfaces: planes, cylinders, cones, spheres, tori and NURBS. Volumes, areas and inertia are integrated over those surfaces, and STEP files keep them as they are. You combine shapes with +, - and &, and every feature returns a new part. Faces and edges are picked by their geometry, for example part.faces().top() or part.edges().parallel_to(Z).concave(). The plate above builds in about 40 ms. The concepts explain shapes, planes, locations and selections.

Features

Modeling (parts, features)

  • Primitives: Box, Cylinder, Cone, Sphere, Torus, Wedge
  • Holes: Hole, CounterBoreHole, CounterSinkHole, placed with Locations, GridLocations, PolarLocations, HexLocations
  • Booleans: fuse, cut, intersect, which can also be written +, -, &
  • Operations: extrude (also tapered), revolve, loft, sweep (also along helices), shell, offset, thicken, draft, mirror, split, section
  • Fillets: circular, variable radius, and curvature-continuous (G2/G3); chamfers

Sheet metal

  • fold and flange with exact bends (radius and K-factor)
  • unfold, and flat_pattern with bend lines
  • bends(), bend_allowance, bend_deduction, developed_length

Deformation

  • twist, taper and bend work on finished parts. A tapered cylinder becomes an exact cone.
  • Free-form deformation with a Lattice

Simplifying: remove_fillets and remove_faces take out fillets, holes and bosses, also on imported parts. faces().fillets() finds the fillet faces.

Molding: draft tilts walls, pockets and holes by a draft angle about a neutral plane. draft_analysis sorts each face for a pull direction into positive, insufficient, vertical or undercut. parting_line finds the parting line.

2D (sketches)

  • Profile is a pen: it draws lines and tangent arcs, turns, and adds fillets and chamfers at corners as it goes.
  • Shapes: Rectangle, RoundedRectangle, Circle, Ellipse, Polygon, RegularPolygon, Triangle, Trapezoid, Slot, ArcSlot, Hull, and Stroke (a band along a path). The polygon shapes take fillet= and chamfer=.
  • Exact 2D Booleans, offsets, and corner fillets and chamfers. Sketches can be extruded, revolved and swept.
  • Text with exact font outlines (the Lato font is included)

Curves and surfaces

  • Curves: Line, Polyline, PolarLine, CenterArc, ThreePointArc, RadiusArc, SagittaArc, TangentArc, EllipticalArc, Spline, Bezier, Helix, FilletPolyline
  • Surfaces: surface through a grid of points, ruled, stitch (faces into a solid), to_nurbs

Selection

  • By position (top(), bottom(), nearest(), …), by size (largest(), smallest()), and by geometry (lines(), circles(), planar(), cylinders(), parallel_to(), facing(), convex(), concave(), fillets(), …)
  • filter_by, sort_by, group_by, set operators between lists, and neighbors() of a face

Measuring and checks

  • volume, area, center and mass_properties (inertia, principal axes), computed from the exact surfaces to seven significant digits, with an error estimate
  • distance_to, closest_point, intersection_curves, silhouette, project, outline, edge radius and convexity
  • is_valid and heal(). Every kernel result is checked, and a fillet or shell that can't work raises an error that says what would fit.

Files

  • STEP in and out: exact geometry, assemblies, units, names and colors (named(), colored()); read_step also reads coordinate systems, curves and points
  • DXF in and out with exact arcs and splines; STL in and out; glTF/GLB and OBJ out
  • SMLib's own format (save, load)

Pictures

  • render() needs no GPU or browser:
    • shaded views, and sheets of 2 or 4 views
    • technical drawings in first-angle (ISO E) or third-angle (ISO A) projection, with dashed hidden lines and center lines
    • sections, x-ray, highlights, markers, a measurement overlay, zebra stripes and curvature maps
  • diff_images compares two renders.
  • show() opens a 3D viewer in the browser or a notebook.

Agents

  • The MCP server smlibpy-mcp has a live viewer, snapshots, function search and a tested guide for every function. People who want parametric apps that rebuild from sketches and features are sent to the ClassCAD MCP.
  • A Claude Code plugin, installed from this repository (see below)

Install

pip install smlibpy

There are wheels for Linux (x86_64, aarch64), macOS (arm64, x86_64) and Windows, for Python 3.10 to 3.14, with the kernel compiled in. They are 5 to 7 MB, and numpy is the only dependency. For agents, pip install "smlibpy[mcp]" adds the MCP server; see AI agents.

To build from source you need CMake and a C++17 compiler (about a minute on a laptop):

git clone --recursive https://github.com/awv-informatik/smlibpy
cd smlibpy
pip install .

For agents

The MCP server lets Claude and other agents model with smlibpy. In Claude Code:

claude plugin marketplace add awv-informatik/smlibpy
claude plugin install smlibpy@smlibpy

Other hosts start uvx --from "smlibpy[mcp]" smlibpy-mcp; see AI agents. The agent works in four steps:

  1. A skill tested on the real kernel: every function has a guide, written by agents that ran each call and wrote down what they found. The server hands the guides out, and its search knows CAD synonyms.
  2. One script per step: the agent writes a whole step as a Python script and runs it. The session keeps the model between scripts; a kernel crash costs a restart, and the session is rebuilt from the scripts that made it.
  3. A renderer to look with: snapshot draws the model in software, as technical drawings with hidden lines, sections, x-ray, highlighted selections, markers, zebra stripes or curvature maps.
  4. Loops until it is right: after every step the agent checks numbers and pictures, fixes what is off, compares before and after on a pinned frame, and goes back to a checkpoint when a step fails.

What the snapshot tool draws: an iso view, technical drawings in first- and third-angle projection, hidden lines, a hatched section and section views, a before and after difference, a four-view sheet, highlights and markers, a sketch over a part, size annotations, x-ray, one color per body, a mirrored pair of views, zebra stripes and curvature maps of a circular fillet against a curvature-continuous blend.

In JavaScript

smlibwasm (@classcad/smlibwasm on npm) is smlibpy for JavaScript and TypeScript: the same API on the same kernel, compiled to WebAssembly. It runs in the browser and in Node, without a server and without dependencies.

npm install @classcad/smlibwasm
import { Box, Cylinder, GridLocations, Z, toStep } from '@classcad/smlibwasm'

let plate = Box(80, 60, 10)
plate = plate.fillet(plate.edges().parallelTo(Z), 8)
plate = plate.cut(GridLocations(60, 40, 2, 2).mul(Cylinder(4, 10)))
const step = toStep(plate) // the STEP file as text

Names are camelCase, keyword arguments become an options object, and operators become methods (a.cut(b) for a - b). A browser loads about 1.8 MB with brotli: 1.5 MB for the kernel (smlibwasm.wasm, 6.2 MB uncompressed) and 0.3 MB for the library and its font. The JavaScript docs have the sizes, examples for the browser and the whole API in TypeScript; the source is in js/.

A short tour

Sketches

Sketches are 2D regions. Place them on a plane or a face, then extrude, revolve, loft or sweep them.

profile = Polygon((25, 0), (60, 0), (60, 12), (35, 12), (35, 40), (25, 40))
flange = profile.on(Plane.front).revolve(Z)
flange -= PolarLocations(47.5, 8) * Cylinder(5, 30)

Text

Lettering is a sketch with the exact outlines of a font; size is the height of the capitals.

tag = Box(60, 20, 3)
tag -= Text("SMLIB 01", 8).on(tag.faces().top()).extrude(-0.5)

Selecting edges and faces

Selectors chain and always return lists. A list with one element works wherever a single shape is expected.

flange = flange.fillet(flange.edges().concave(), 4)
flange = flange.chamfer(flange.faces().top().edges().circles(), 1)

Fillets

Fillets can be circular, vary in radius, or be curvature continuous.

box = Box(30, 20, 10)
soft = box.fillet(box.edges(), 3, continuity="G2")
ramp = box.fillet(box.edges().parallel_to(Z).first, (1, 4))

Surfaces

Open curves make surfaces. You can stitch them, thicken them, or start from a grid of points.

import math

grid = [[(x, y, 4 * math.sin(x / 15) * math.cos(y / 15)) for x in range(0, 60, 10)] for y in range(0, 50, 10)]
panel = surface(grid).thicken(2)

Measuring

mp = flange.mass_properties(density=7.85e-3)   # steel, g/mm³
mp.mass, mp.center, mp.inertia

Files

STEP, DXF, STL, glTF/GLB, OBJ and SMLib's own exact format.

export_step([flange, panel.named("panel")], "parts.step")
export_glb(flange, "flange.glb")
export_dxf(flange.section(Plane.XZ), "flange-profile.dxf")

Documentation

The documentation is on smlibpy.classcad.ch:

Status

smlibpy is new (version 0.2). It covers solid and surface modeling, text, and reads and writes STEP and DXF with the exact geometry; smlibwasm has all of it in JavaScript. Assemblies with product structure and dimensioned 2D drawings are not there yet.

License

smlibpy and smlibwasm are MIT licensed. They build and bundle the SMLib kernel from NVIDIA-Omniverse/usd-brep, © NVIDIA, under the Apache License 2.0; see NOTICE.

Metadata

Release files for smlibpy 0.2.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for smlibpy 0.2.3
File Size Uploaded Provenance
smlibpy-0.2.3.tar.gz 12.3 MB With provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for smlibpy 0.2.3
File
smlibpy-0.2.3-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
smlibpy-0.2.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details
smlibpy-0.2.3-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details
smlibpy-0.2.3-cp314-cp314-macosx_11_0_x86_64.whl CPython 3.14 CPython 3.14 macOS 11.0+ x86-64 Details
smlibpy-0.2.3-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
smlibpy-0.2.3-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
smlibpy-0.2.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
smlibpy-0.2.3-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details
smlibpy-0.2.3-cp313-cp313-macosx_11_0_x86_64.whl CPython 3.13 CPython 3.13 macOS 11.0+ x86-64 Details
smlibpy-0.2.3-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
smlibpy-0.2.3-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
smlibpy-0.2.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
smlibpy-0.2.3-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.26+ ARM64, Linux glibc 2.28+ ARM64 Details
smlibpy-0.2.3-cp312-cp312-macosx_11_0_x86_64.whl CPython 3.12 CPython 3.12 macOS 11.0+ x86-64 Details
smlibpy-0.2.3-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
smlibpy-0.2.3-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
smlibpy-0.2.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
smlibpy-0.2.3-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details
smlibpy-0.2.3-cp311-cp311-macosx_11_0_x86_64.whl CPython 3.11 CPython 3.11 macOS 11.0+ x86-64 Details
smlibpy-0.2.3-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
smlibpy-0.2.3-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
smlibpy-0.2.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details
smlibpy-0.2.3-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details
smlibpy-0.2.3-cp310-cp310-macosx_11_0_x86_64.whl CPython 3.10 CPython 3.10 macOS 11.0+ x86-64 Details
smlibpy-0.2.3-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details

Total release size: 178.6 MB

Release files / smlibpy-0.2.3.tar.gz

Download URL smlibpy-0.2.3.tar.gz
Size 12.3 MB
Tags Source
SHA-256 checksum
How to use checksums
4ea910e3f5b66758a8fd3a5a12d5f4c3833485ce52baa9ea8c6c3971eb5a5850
BLAKE2b-256 checksum
How to use checksums
80346e0cc29cba0685adc79b2bb1fa8feb24ee2a3b69d82b92d3be0f8d3aa90d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp314-cp314-win_amd64.whl

Download URL smlibpy-0.2.3-cp314-cp314-win_amd64.whl
Size 6.7 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
4cdc41d684dd179bcc17a36c0d4106acd07e1d9da608d8de68bc2fce948a7214
BLAKE2b-256 checksum
How to use checksums
f7a0bab5484b725ea372a33718d02ee3ce1889a14e0863441516b5ebb37fb6a0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL smlibpy-0.2.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 7.8 MB
Tags CPython 3.14 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
4e2f2521950c2390ab0b925b3b303ebd0dbb482867bdec717c2c60e3d3459b7b
BLAKE2b-256 checksum
How to use checksums
92f7342c3b74a14253c2997724c36a0cda663ccf45f301a12737f23eb9cac278
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL smlibpy-0.2.3-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 7.0 MB
Tags CPython 3.14 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
cc9367fa9abeae633749c89720a8e093a3fa0d77ca50dc6d83408e5c803bfb90
BLAKE2b-256 checksum
How to use checksums
13140a9dc8e420efa7f9f90f9c170b27ff56ca6f380247d64c0bd4c6d4d6d3d3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp314-cp314-macosx_11_0_x86_64.whl

Download URL smlibpy-0.2.3-cp314-cp314-macosx_11_0_x86_64.whl
Size 6.2 MB
Tags CPython 3.14 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
6b19c133a3da14617e822f9d2287108cb75df814826badb4384ab8bcf9ca4a3d
BLAKE2b-256 checksum
How to use checksums
27df95646689e99e9cba3b40980dce76af39e0b0ac73fea3937eb8d3f7ff8854
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp314-cp314-macosx_11_0_arm64.whl

Download URL smlibpy-0.2.3-cp314-cp314-macosx_11_0_arm64.whl
Size 5.7 MB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
363a6cc43b43fc569b01113d652ccf0eea5a413face9c21d8818e24a7249ec89
BLAKE2b-256 checksum
How to use checksums
713afee6047511b76442f13b8928e3922e8eeca8fd09eb0c9916563f8e8f7ff9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp313-cp313-win_amd64.whl

Download URL smlibpy-0.2.3-cp313-cp313-win_amd64.whl
Size 6.5 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
e32901d904cd60f35313a02156959344b0dbaeb731b9278bf69cebc053291fe2
BLAKE2b-256 checksum
How to use checksums
aa7f2c5f6817c5fc5246c1af1545ea46ba75f417deec2114a80e5b1695e6ec21
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL smlibpy-0.2.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 7.8 MB
Tags CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
7e5f37b149bac8e00a9de94858868b4a06212f441877b0c66197d78515be6322
BLAKE2b-256 checksum
How to use checksums
3da5edf662e885ab0e051d78361fbee14bd36381cccd3c9d9e959f778f970cc7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL smlibpy-0.2.3-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 7.0 MB
Tags CPython 3.13 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
14a3dd5161212fa43f7a626503c8e5eb71ce51c96b1fa864b9f184ab554946b2
BLAKE2b-256 checksum
How to use checksums
5102bc9a1f024bfb8cb16e652b18775af96e299780449f9026862ce6a31e9bf0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp313-cp313-macosx_11_0_x86_64.whl

Download URL smlibpy-0.2.3-cp313-cp313-macosx_11_0_x86_64.whl
Size 6.2 MB
Tags CPython 3.13 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
375375e36fa4ab77a618240debba16b3023463a9a51a914683465b2e4860f28b
BLAKE2b-256 checksum
How to use checksums
1053982b869ce2bd83ef9988ce9aec771a9b65a9301008130d48b1d640e2d8e9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp313-cp313-macosx_11_0_arm64.whl

Download URL smlibpy-0.2.3-cp313-cp313-macosx_11_0_arm64.whl
Size 5.7 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
51cdab081b37c0038ed00986368b6962351ca4c9ebe8c03f3d569fc96d2518e7
BLAKE2b-256 checksum
How to use checksums
63c1e7068b91189fc802e913adcf23bf102ceabea980df77400c566ee027416a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp312-cp312-win_amd64.whl

Download URL smlibpy-0.2.3-cp312-cp312-win_amd64.whl
Size 6.5 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
539dbbb9c37d7b33c9a012887f94bf938719e7c16049ccf00fa397041e53dfb9
BLAKE2b-256 checksum
How to use checksums
542ac59a28cc46374b7e3c704fb08590229c65cfacfe6ff516f616fb7ae5fbb6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL smlibpy-0.2.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 7.8 MB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
5b02d6be77928bd7e20b28bcf347fc0cc9a287524197f65ae3347fd5f287a524
BLAKE2b-256 checksum
How to use checksums
14c8ec05a4d5a87ede9e98ae2e8d8bd5e69b1b1e077c745a7c2833284834c131
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL smlibpy-0.2.3-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 7.0 MB
Tags CPython 3.12 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
3571cb94076c7277c374e8aac0489ff8031e9f3e10715a5192247c3c0c888384
BLAKE2b-256 checksum
How to use checksums
f0cfed86dbee1cf5e5592def37b052aae43be45f16c84dec77c9d803be4ddb76
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp312-cp312-macosx_11_0_x86_64.whl

Download URL smlibpy-0.2.3-cp312-cp312-macosx_11_0_x86_64.whl
Size 6.2 MB
Tags CPython 3.12 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
272d89c685265d05e1f93599949ad4f645384a90a635c46a1dcd8c7ef995f84c
BLAKE2b-256 checksum
How to use checksums
7ac7217f8bb5dd9987e48826d47b19749ef92ea233a7ff012a59646d719ee557
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp312-cp312-macosx_11_0_arm64.whl

Download URL smlibpy-0.2.3-cp312-cp312-macosx_11_0_arm64.whl
Size 5.7 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
4dc4ca35f1697af41217033425639ed89a8d9eca4bc186148bbe0cc7a6023159
BLAKE2b-256 checksum
How to use checksums
0ca9108870bef52f1e87476e42a7779aa7a7afd48f29d96fa68ee2ca5ae77884
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp311-cp311-win_amd64.whl

Download URL smlibpy-0.2.3-cp311-cp311-win_amd64.whl
Size 6.5 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
3891380f83dd0a98330928da2685534e67c03a391b60744cbf729beb7858ae49
BLAKE2b-256 checksum
How to use checksums
7e2937f0656b15816fe4499998e1a4298680118fbb3b5a458ebd46c788e10285
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL smlibpy-0.2.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 7.8 MB
Tags CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
5ef7a7ef0ed85f9aab5ded727732bf781a7d313628c1ca3d182ff38254ac12fb
BLAKE2b-256 checksum
How to use checksums
945f9778756fc21b647f8e6e679e64cf3bfd5827c9eb9e27019a7996bfa18bdd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL smlibpy-0.2.3-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 7.0 MB
Tags CPython 3.11 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
e89789a6c86649305d2321c33d5012d2f70f3c1082c59af25201f62daa556564
BLAKE2b-256 checksum
How to use checksums
011491907278f9929a9618f9add127982901ab637198f3ff99dee7e8a14be7e4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp311-cp311-macosx_11_0_x86_64.whl

Download URL smlibpy-0.2.3-cp311-cp311-macosx_11_0_x86_64.whl
Size 6.2 MB
Tags CPython 3.11 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
c94526cad9e9bd1556d96bf64fc315f427c33ddfb0b8dc6c1a24ba1e57a592eb
BLAKE2b-256 checksum
How to use checksums
f79511327e0056aef007f0d63336361aa4249af3fba723664bd272e3064c2138
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp311-cp311-macosx_11_0_arm64.whl

Download URL smlibpy-0.2.3-cp311-cp311-macosx_11_0_arm64.whl
Size 5.7 MB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
d4eaebf431cd4cafd4027dd2f94ee7c7b9fed59f775e72afa6a5f6f10604afa2
BLAKE2b-256 checksum
How to use checksums
3c0ccbb3ac1b91fb756b427950dac7003cb128d0fcf0e9368d8df139bf00f3f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp310-cp310-win_amd64.whl

Download URL smlibpy-0.2.3-cp310-cp310-win_amd64.whl
Size 6.5 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
a29649e9e3586ce5f786839d62bc16c3dce55436e418b1fc50a933f77b567967
BLAKE2b-256 checksum
How to use checksums
57415394a509d600533a9b50d999215135454b4247cfca3b6fc0d86d62b059a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL smlibpy-0.2.3-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 7.8 MB
Tags CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
3b7635efccd9eddc48f2b8a6c159c3b3a8df8c0d8a6f8755c88651237a5f512f
BLAKE2b-256 checksum
How to use checksums
0320d2a6aa12376abb832651095f0aba130638996949fa176a0994ef3d72f18c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL smlibpy-0.2.3-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 7.0 MB
Tags CPython 3.10 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
2089242e3de6b1c8b3b337d9a1dd42247a653af40815e2f6a83d68e64fc95c38
BLAKE2b-256 checksum
How to use checksums
1fec22168ceca0c9dd95d6bf91b77c2a254a67f7c92f1028795741d82825934f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp310-cp310-macosx_11_0_x86_64.whl

Download URL smlibpy-0.2.3-cp310-cp310-macosx_11_0_x86_64.whl
Size 6.2 MB
Tags CPython 3.10 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
8aadb47eddb3a4b0058f74e00e84207a86b8c8d25b36726e4eaef4e2dafd640c
BLAKE2b-256 checksum
How to use checksums
296ec2f87529afb2b6a595ea05594eb43d7f474a0cb5a5c96b34b17e4c9aa048
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Release files / smlibpy-0.2.3-cp310-cp310-macosx_11_0_arm64.whl

Download URL smlibpy-0.2.3-cp310-cp310-macosx_11_0_arm64.whl
Size 5.7 MB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
61085e764cab35e71debace2c21a01b86bd451872025459ac6158c9369b682c5
BLAKE2b-256 checksum
How to use checksums
dc80659ec363ec98d7435bf74fd9ddcb448f1e28d98217f024e9619162da09f6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

Security for smlibpy 0.2.3

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.

Full provenance

All 26 files in this release have been uploaded with provenance metadata.

Select from 26 files

Attestation for smlibpy-0.2.3.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 13, 2026.

Transparency log

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.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page