Skip to content

feat: add node batches 2 and 3 with their templates - #32

Merged
devchaudhary24k merged 1 commit into
mainfrom
t3/implement-phase-2-3-tools
Nov 3, 2026
Merged

devchaudhary24k merged 1 commit into
mainfrom
t3/implement-phase-2-3-tools

Conversation

@devchaudhary24k

Copy link
Copy Markdown
Member

Summary

Phases 2 and 3 of implementation.md: the 20 remaining catalogue nodes, their templates and their Studio forms.

  • Batch 2: Deduplicate, Auto-trim, Pad / Extend, Pixel-art upscale, Split / Tile, Adjust, Filters, Sharpen / Blur, Background, Text watermark, Image watermark, Border / Rounded corners.
  • Batch 3: Set copyright / author, Best format, Responsive set, Favicon / App icons, Placeholder, Palette, Contact sheet, Images to PDF.
  • Templates: Watermark and compress, Instagram carousel, Responsive image set.
  • Engine: combining nodes can pass their inputs on by reference, so Deduplicate never holds the batch and kept items keep their step cache and source file (ADR 0011). Output and Rename take data and document items; ICO files are documents (ADR 0012). The estimate follows items through Deduplicate.
  • Studio: settings forms, card summaries and icons for every new node; the inspector shows the text of data items (palette, snippets, manifest) and tables for Deduplicate and Best format.
  • Saving: a save that does not fit in browser storage (pipelines can now hold a logo) shows an error instead of failing silently.
  • Tests: the node pair matrix covers all 33 nodes and runs as four shards in parallel.

No new dependencies: BlurHash, the PDF writer and the ICO writer are small in-repo modules.

Testing

  • pnpm validate: 1,873 tests and the production build pass. Coverage is 63.5% of statements.
  • Every new node has output tests that decode what Output delivered (pixels, PDF structure, ICO entries, BlurHash decoded back, JSON and HTML).
  • Engine tests with fake nodes cover passing inputs on, worker pool tests cover the same through OPFS, and preview tests cover data and document items.
  • pnpm test:scale (500 images of 12 megapixels) passes.
  • On the production build, real photos ran through every new node in the Studio, and every delivered ZIP was checked, including picking an SVG logo and running with it.
  • Firefox and WebKit run in CI only.

- Add the 20 remaining catalogue nodes: Deduplicate, Auto-trim, Pad / Extend,
  Pixel-art upscale, Split / Tile, Adjust, Filters, Sharpen / Blur, Background,
  Text watermark, Image watermark, Border / Rounded corners, Set copyright /
  author, Best format, Responsive set, Favicon / App icons, Placeholder,
  Palette, Contact sheet and Images to PDF
- Add the Watermark and compress, Instagram carousel and Responsive image set
  templates
- Let combining nodes pass their inputs on by reference, so Deduplicate never
  holds the batch and kept items keep their step cache and source (ADR 0011)
- Carry data and document items to Output and Rename; ICO files are documents
  (ADR 0012)
- Show settings forms, summaries and icons for the new nodes in the Studio,
  and the text of data items in the inspector
- Estimate work through Deduplicate, and refuse a save the browser has no room
  for instead of failing silently
- Shard the node pair matrix so browsers run it in parallel
@devchaudhary24k
devchaudhary24k merged commit 4712041 into main Nov 3, 2026
14 checks passed
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