Skip to main content

Turn black-and-white artwork into stamp-ready STL models.

Project description

stampify

Turn black-and-white artwork into stamp-ready STL models.

Repository: https://github.com/nwcell/stampify

Install

Run the CLI without installing:

uvx stampify path/to/image.png

Install it as a standalone tool:

uv tool install stampify
stampify path/to/image.png

Add it to another Python project:

uv add stampify

CLI

Generate the bundled sample stamp:

uv run stampify sample/xmas-cowboy.jpeg

Write to a specific STL path:

uvx stampify path/to/image.png -o stamp.stl

Compare the two geometry modes:

uvx stampify path/to/image.png --mode vector -o stamp-vector.stl
uvx stampify path/to/image.png --mode voxel --resolution 300 -o stamp-voxel.stl

Show all options:

uvx stampify --help

Python API

Use it from Python:

from ink_print import StampOptions, write_stamp

options = StampOptions(mode="vector", size=80, border=2, simplify=0.05)
output_path, mesh = write_stamp("path/to/image.png", options=options)
print(output_path, mesh.extents)

Development

Run from a local checkout:

uv run stampify sample/xmas-cowboy.jpeg

Install the local checkout as a tool:

uv tool install .

Add the local checkout to another project:

uv add git+https://github.com/nwcell/stampify

Notes

  • The repo includes sample/xmas-cowboy.jpeg as a sample input.
  • vector mode is the default and produces smoother, smaller meshes.
  • voxel mode is still available as a fallback.
  • --resolution 0 keeps the source image resolution.
  • --simplify and --min-area are the main cleanup controls for traced artwork.
  • The default stamp mirrors the artwork so the printed impression reads correctly.
  • The border is raised by default. Disable it with --no-raised-border.

Release automation

This repo includes:

  • .github/workflows/ci.yml for tests and build validation on pushes and pull requests.
  • .github/workflows/release.yml for publishing to PyPI from a GitHub Release via Trusted Publishing.

See RELEASING.md for the release process.

License

MIT. See LICENSE.

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

stampify-0.1.3.tar.gz (562.0 kB view details)

Uploaded Source

Built Distribution

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

stampify-0.1.3-py3-none-any.whl (7.4 kB view details)

Uploaded Python 3

File details

Details for the file stampify-0.1.3.tar.gz.

File metadata

  • Download URL: stampify-0.1.3.tar.gz
  • Upload date:
  • Size: 562.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for stampify-0.1.3.tar.gz
Algorithm Hash digest
SHA256 4579f67efcfdc2997d9da84e8580916342fd7187060b6109179a11fb83af6f16
MD5 e412d91c266c917544a0b3a833fbce55
BLAKE2b-256 a040bfca544f8329020b2249a053ff2f9600db63e0df5dcea5a1da26226e4dbe

See more details on using hashes here.

Provenance

The following attestation bundles were made for stampify-0.1.3.tar.gz:

Publisher: release.yml on nwcell/stampify

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

File details

Details for the file stampify-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: stampify-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 7.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for stampify-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d5df7fc90e261b5653f042f687d2e16b6c4fea2de1d7c3389810a7c614c9a6b4
MD5 a26c970168d4328e8c24afa9f2e73fea
BLAKE2b-256 6a29fb737f2d76b1c2bac287d5ace7e793ba27d775a3aeb418302837c24d0739

See more details on using hashes here.

Provenance

The following attestation bundles were made for stampify-0.1.3-py3-none-any.whl:

Publisher: release.yml on nwcell/stampify

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