Skip to content

Repository files navigation

MarketPack

MarketPack turns up to three source product photos into marketplace-sized JPGs, grouped by platform inside a single ZIP. Processing and ZIP creation happen entirely in the browser. Try the live tool, inspect the checkable output demo, or read the Korean marketplace-image workflow guide.

Product and service

  • Buyer: Etsy/Amazon/Shopify sellers who also promote products on Instagram.
  • Job: Export the same product shoot repeatedly without manual resizing, naming, or folder sorting.
  • Free demo: Up to 3 source images, all four presets, real JPG output, real ZIP download, no watermark.
  • Offline Pro product: Personal is 15,000 sats for one user; Team is 100,000 sats for up to 10 named users in one legal organization. Both receive the same completed 1–20 image local batch ZIP with source-filename slugs and manifest.csv; only license scope differs.
  • Optional tip: Free-tool users may send 2 sats or more to the verified Lightning address. A tip buys no service, support, feature, or marketplace approval and is separate from the pilot.
  • Fixed-scope service: $99 for up to 20 non-sensitive source images, two agreed export targets, organized filenames and folders, an exception report, and one revision.
  • Exclusions: Retouching, background removal, rights clearance, marketplace approval, sensitive material, and ongoing pipelines.
  • CTA: One pilot slot is currently listed. Its fit-check templates forbid uploading images or private links. Scope, safe transfer, delivery, payment, and cancellation terms are agreed before work starts. An issue is not a booking. Lightning settlement is available only after an exact sats quote is agreed in writing; buyers are told not to pay early.
  • Strong validation: A signed scope and settled payment. Tool use or an inquiry alone is not revenue.

Presets reviewed 2026-08-24

These are convenient export presets, not compliance certification:

Folder Output Basis
etsy/ 2000 × 2000 JPG Etsy recommends listing photos at least 2000 px in width and height.
amazon/ 1600 × 1600 JPG, white pad Amazon guidance recommends 1600 px or larger on the longest side and a pure-white main-image background. Category/content rules remain seller responsibilities.
shopify/ 2048 × 2048 JPG Shopify says 2048 × 2048 usually displays best for square product images.
instagram/ 1080 × 1350 JPG Common 4:5 portrait export for Instagram feed use. Meta's public official pages did not expose an exact pixel recommendation in anonymous retrieval, so recheck before relying on it as a requirement.

Official references:

Marketplace rules can change. Review current category, content, file-size, rights, and image requirements before upload. Resizing cannot make a visually non-compliant image compliant.

Checkable output example

The live landing page shows one generic source beside two files generated by the screenless service harness. Their reviewed dimensions are 1254 × 1254, 1600 × 1600, and 1080 × 1350. The source mockup is an original AI-generated demonstration image, disclosed on both language pages; it is not a real seller asset or brand. The conversion outputs themselves were produced locally by service/pack.mjs.

Run and verify

No packages or build step are required.

python3 -m http.server 8080
node test.mjs
node --test service/pack.test.mjs

Open http://localhost:8080, drop one to three JPG/PNG/WebP images, create a ZIP, and confirm that each chosen platform folder contains correctly sized JPGs. Node tests cover preset data, geometry, naming, CRC-32, and ZIP structure; browser image decoding, Canvas output, drag-and-drop, and download require a real-browser smoke test.

During the 2026-08-24 local verification, the automated tests and HTTP serving checks passed, but macOS denied the computer-use accessibility read of the available browser. The real-browser image/drop/download smoke test therefore remains an explicit pre-deployment gate rather than a claimed pass.

The paid pilot has a separate screenless delivery harness at service/pack.mjs. On macOS it accepts 1–20 regular JPG, PNG, or WebP files, one or two explicitly supplied targets, contain/pad or cover/crop mode, and a brand-safe output slug. It builds in a new temporary directory, verifies every final dimension, renames the completed directory atomically, rejects existing output paths and symlink inputs, and never writes to source files. Its integration test creates synthetic imagery and verifies both contain and cover output dimensions with /usr/bin/sips.

node service/pack.mjs \
  --input /safe/path/source-images \
  --output /safe/path/completed-pack \
  --target shop:2048x2048 \
  --target social:1080x1350 \
  --mode contain \
  --background FFFFFF \
  --slug linen-tote

Privacy and cost

  • The runtime conversion path has no fetch/XHR, analytics, cookies, storage, external fonts, CDN, API, AI call, backend, or image upload. The disclosed demo source is a pre-generated static asset and is not generated or sent anywhere when a visitor uses the tool.
  • Native Canvas transforms images; a small native store-mode ZIP writer builds the archive.
  • Compatible static hosting can cost $0.
  • Large source images consume browser memory. The prototype intentionally caps inputs at three.

License

The software source and documentation are available under the MIT License. The three files under assets/demo-*.jpg are generated demonstration material, not seller content, and are included only to document actual output shapes; the tool does not depend on them for conversion.

Revenue gates

  1. Deploy to an owner-authorized static host with GitHub Issues enabled.
  2. Validate interest using privacy-respecting aggregate page/CTA events only if the owner approves analytics.
  3. Keep the free tool's three-image cap distinct from the completed Pro product's documented 20-image browser/memory boundary.
  4. Agree service scope, a private transfer method, payment, cancellation terms, and tax handling before accepting work.
  5. Recheck requested export targets against current official marketplace documentation before delivery.

No revenue exists until a settled, withdrawable payment is verified.

About

Local-only marketplace image packer with a fixed-scope image service

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages