跳到正文
DEV Community· Tharun·· 3 小時前AI 評分41

ListingLift:供轉售者使用的本地 AI 商品刊登文案工具(Hacktoberfest HF26 Week 2 — Side Hustle)

ListingLift: a local AI listing writer for resellers (Hacktoberfest HF26 Week 2 — Side Hustle)

AI 導讀

ListingLift 是供轉售者使用的本地 AI 商品刊登文案工具,透過 Ollama 在賣家裝置上運行 Gemma(gemma4:e4b),按商品照片生成刊登內容。它會產生標題、SEO 標籤、描述、建議價格範圍、商品狀況備註及平台提示。工具毋須雲端 API,亦可在沒有網絡訊號時使用。

正文

Tharun

Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle Submission 💸

What I built

ListingLift is a small local-first web app for resellers (Etsy, eBay, Depop, Facebook Marketplace). Upload one photo of whatever you're reselling, pick a platform, and it generates a ready-to-paste title, SEO tags, description, suggested price range, condition notes, and a platform-specific tip — all from a local, open-weight vision model running on the seller's own machine via Ollama, no cloud API involved.

  • Repo: https://github.com/tharun634/listinglift
  • Stack: Node.js + Express backend, vanilla HTML/CSS/JS frontend, Ollama running Gemma (gemma4:e4b, multimodal/vision) for inference.
  • Demo walkthrough (upload → fill platform/notes → generate → full listing):

ListingLift demo

  • Agent build session:

Who would pay for this, and why

Resellers list a lot of items a week, and writing a decent title + SEO tags + an honest description for each one is real, repetitive work. The existing "AI listing writer" tools out there are subscriptions that charge per listing and require uploading product photos to someone else's servers.

ListingLift's pitch to a reseller: run it once, list forever, for free, without your inventory photos leaving your laptop.

  • Zero marginal cost per listing — no OpenAI/Claude bill. Once it's set up, generating the 50th listing costs exactly as much as the 1st: nothing. That's the actual side-hustle economics: a free local tool beats a $20/mo subscription that caps out or throttles you during a busy week.
  • Private by default — unlisted inventory, home photos, and brand/product details never leave the seller's machine. For someone reselling out of their house, that's not a nice-to-have.
  • Works with no signal — useful at an estate sale, thrift store, or storage unit while sourcing inventory on the spot.

Why open innovation matters here

This only works because the model is open-weight and runs locally:

  • Running Gemma via Ollama means there's no per-call bill, no rate limit tied to a paid tier, and no dependency on a vendor's uptime or pricing changes six months from now.
  • Because the weights are open, the exact same pipeline can later be fine-tuned on a seller's own successful listings (what wording actually sold) — a closed API behind a chat endpoint can't give you that.
  • It keeps a reseller's unlisted inventory and home photos off a server they don't control, which matters when the "product" is sitting in someone's actual house.

Technical execution

  • The photo is sent straight to the model as part of a single chat completion (/api/chat with an images field) — no separate OCR or vision pipeline needed because Gemma's multimodal.
  • The model is instructed to return strict JSON (title, description, tags, suggestedPriceRange, conditionNotes, platformTips), which the backend parses and the frontend renders into a clean, copy-button-per-field UI.
  • Tested end-to-end against a local gemma4:e4b Ollama instance; see the repo README for setup (ollama pull gemma4:e4b, npm install, npm start).

Partner category

Entering Best Use of Gemma — the project's entire value proposition depends on Gemma's local multimodal inference.

Try it

git clone https://github.com/tharun634/listinglift
cd listinglift
npm install
ollama pull gemma4:e4b
npm start
# open http://localhost:4100

hf26challenge

來源:DEV Community · dev.to