Skip to content

feat(holder): add steel-lined universal trays - #52

Closed
richardsolomou wants to merge 8 commits into
mainfrom
posthog/add-universal-magnetic-trays
Closed

richardsolomou wants to merge 8 commits into
mainfrom
posthog/add-universal-magnetic-trays

Conversation

@richardsolomou

@richardsolomou richardsolomou commented Aug 15, 2026 •

Copy link
Copy Markdown
Owner

Problem

Fitted holders become obsolete when a collection changes because every miniature footprint has to be planned in advance. A reusable tray also needs to work with existing magnetic bases without forcing a second pocket layout onto every base.

Changes

  • Add a universal Gridfinity tray with a shallow recess for adhesive-backed steel sheet, configurable sheet thickness and edge inset, and an optional retaining rim.
  • Split large trays into printer-sized Gridfinity pieces while keeping retaining walls on the assembled perimeter.
  • Keep balanced and five-pocket-cross base layouts unchanged. Base and fitted-holder magnet settings remain shared, while universal tray settings are independent.
  • Preserve base, holder, and stem state when switching generators, and migrate released version-6 workspaces into the tray schema.

Risk

Medium. The generated recess is validated against the printed deck, but retention still depends on the steel sheet, adhesive, base magnets, and miniature geometry. Physical transport testing remains necessary.

Verification

  • just check (255 tests)
  • just e2e-run (47 browser tests)
  • Rendered and inspected the default 7×5 universal tray in the browser and from its exported STL.
  • Re-imported the STL into Blender 5.1: 41,220 faces, zero non-manifold edges, and exact 293.5×209.5×17mm bounds.

Checklist

  • Tests cover new or changed behavior where practical.
  • Geometry changes are checked against a real export, not just the preview.
  • User-facing behavior is documented in the README.

Add a continuous Gridfinity deck with configurable square or staggered magnet grids and an optional retaining rim. Preserve fitted holders and migrate saved workspaces safely.

Generated-By: PostHog Desktop
Task-Id: 63090379-316f-46ce-ba66-b38d39c59627
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Aug 15, 2026 •

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
basekit 8fccc36 Commit Preview URL

Branch Preview URL
Sep 14 2026, 08:42 AM

richardsolomou and others added 6 commits August 15, 2026 14:35
Let universal trays export as Gridfinity-aligned pieces capped by configurable column and row sizes. Keep retaining walls only on the assembled perimeter and migrate saved tray settings.

Generated-By: PostHog Desktop
Task-Id: 63090379-316f-46ce-ba66-b38d39c59627
Add an explicit tray-compatible pocket layout whose magnet centres use the universal tray's canonical staggered lattice. Share pitch across both generators, preserve lattice phase across split modules, keep ribs aligned with every boss, and retain existing balanced layouts.

Generated-By: PostHog Desktop
Task-Id: 63090379-316f-46ce-ba66-b38d39c59627
Increase the default compatible lattice pitch to 30mm, reducing a 7x5 tray to 67 magnets. Make automatic tray-compatible base counts step down to the strongest supported pattern that physically fits the selected pitch.

Generated-By: PostHog Desktop
Task-Id: 63090379-316f-46ce-ba66-b38d39c59627
Add a configurable smallest-base size and reserve half of it around the assembled tray perimeter. Keep internal module seams available, migrate saved trays, and reduce the default 7x5 layout to 59 usable magnet positions.

Generated-By: PostHog Desktop
Task-Id: 63090379-316f-46ce-ba66-b38d39c59627
…-magnetic-trays

# Conflicts:
#	src/App.tsx
#	src/lib/workspace.ts
@richardsolomou richardsolomou changed the title Add universal magnetic tray prototype feat(holder): add universal magnetic trays Sep 14, 2026
@richardsolomou
richardsolomou marked this pull request as ready for review September 14, 2026 08:14
@richardsolomou richardsolomou changed the title feat(holder): add universal magnetic trays feat(holder): add steel-lined universal trays Sep 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant