Skip to main content

Gridfinity Pic-to-Bin

Photograph a tool lying on a printed marker sheet. Get a 3D-printable gridfinity bin with a pocket cut to the tool's exact shape.

📖 Full guide →


Get it running

1. Install

pipx install gridfinity-pic-to-bin
pic-to-bin-fusion install

The second command adds a Gridfinity Pic-to-Bin button under Solid → Create in Fusion 360 — that's what turns the result into a solid model (enable it with Shift+S →).

No pipx yet? py -m pip install --user pipx; py -m pipx ensurepath (Windows) or brew install pipx && pipx ensurepath (macOS) — then open a new terminal. Needs Python 3.10+. More install options →

2. Print the template

generate-phone-template --paper-size letter

Print the PDF at exactly 100% scale — not fit-to-page. One-time setup; the sheet is reusable.

3. Photograph the tool

Lay it inside the dotted zone, shoot from above with all 8 markers in frame. Measure the tool's depth with calipers — that's the one number the photo can't give you. Photo tips →

4. Start the web app

mkdir ~/pic-to-bin && cd ~/pic-to-bin   # Windows: mkdir $HOME\pic-to-bin; cd $HOME\pic-to-bin
pic-to-bin-web --port 8000

Run it from a dedicated folder — output and the SAM2 model weights (several hundred MB, downloaded on the first trace) land in the current directory.

5. Use it

Open http://localhost:8000, drag in the photo, enter the tool depth, and submit. You get a layout preview, a 1:1 fit-test PDF to print and lay the real tool on to check the fit, and a bin_config.json.

Then in Fusion 360, click Solid → Create → Gridfinity Pic-to-Bin and point it at that bin_config.json. It builds the whole parametric bin — body, pockets, finger slots, stacking lip, gridfinity base pads. Export STL and print.


Prefer the terminal? The web app is a wrapper around one command:

pic-to-bin photo.jpg --tool-height 17

Documentation

How it works ArUco calibration, SAM2 tracing, layout packing, bin generation
Installation pipx vs. venv, where to run commands, upgrading, from source
Web app Two-phase re-do flow, multi-user setup, the opt-in LLM review
CLI reference Every pic-to-bin flag, plus the individual pipeline steps
Tolerance & fit Why the pocket fits how it does, and how to tighten or loosen it
Fusion 360 Add-in install, manual ZIP install, macOS Gatekeeper, what gets built
Troubleshooting Marker detection errors, bad fits, common photo problems
Hosting the web app Reverse proxy setup and security notes

MIT licensed — see LICENSE.md.

Metadata

Release files for gridfinity-pic-to-bin 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 gridfinity-pic-to-bin 0.2.3
File Size Uploaded
gridfinity_pic_to_bin-0.2.3.tar.gz 325.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for gridfinity-pic-to-bin 0.2.3
File Interpreter ABI Platform
gridfinity_pic_to_bin-0.2.3-py3-none-any.whl Python 3 none any Details

Total release size: 626.9 kB

Release files / gridfinity_pic_to_bin-0.2.3.tar.gz

Download URL gridfinity_pic_to_bin-0.2.3.tar.gz
Size 325.8 kB
Tags Source
SHA-256 checksum
How to use checksums
6fdadaf5a6f8638eb7bc53de4a5ec21542803680a7b1ed32bcde7fd8ad1ad70e
BLAKE2b-256 checksum
How to use checksums
cf32dbf25b34aa95138abfea075ed6a96d914ac34e5dbb5f45832b0c416ef068
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 Sep 1, 2026.

Transparency log

Release files / gridfinity_pic_to_bin-0.2.3-py3-none-any.whl

Download URL gridfinity_pic_to_bin-0.2.3-py3-none-any.whl
Size 301.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
765067c5cde885538af7bf9a21dac7fc6d1a05d48d52411c8fa14f0c041e170f
BLAKE2b-256 checksum
How to use checksums
720a6597e6d3be4424ba32d9d2675eeb00b5a70c8201a3fa2e9e4d5c8eaf1219
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 Sep 1, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.3 This release

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.1.0

2 release files

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