DEV Community

Cover image for AI E-Commerce Listing Generator for Small Sellers
AR
AR

Posted on

AI E-Commerce Listing Generator for Small Sellers

Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle Submission đź’¸

This is a submission for the Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle

What I Built

I built the E-Commerce Product Description Generator, a lightweight desktop web application designed for small business owners, Etsy makers, and eBay sellers.

Writing compelling product descriptions, titles, and SEO keywords for dozens of items is tedious and time-consuming. Commercial AI writing tools often charge monthly subscriptions or per-token API fees that eat into small profit margins. My app solves this by running entirely on the seller's local computer—generating complete, high-converting product listings in seconds with zero API costs.

Demo

Here is the application running locally:

Interface screenshot of the E-Commerce Product Description Generator app
E-Commerce Generator Output Screen
E-Commerce Generator Input Screen

The seller enters the Product Name (e.g., Handcrafted Leather Wallet).

Input key features or bullet points.

Select a desired Tone of Voice (e.g., Professional & Elegant, Casual & Friendly, Bold & Catchy).

Click Generate Listing to instantly get an SEO-optimized title, product description, bullet points, and 10 search tags.

Code

The complete source code is open source and available on GitHub:

How I Built It
The application is built using a simple, modern Python stack:

Open-Weight AI Model: Google's Gemma (gemma:2b) model, running locally via Ollama.

Frontend UI: Streamlit, providing a clean, interactive browser interface.

Backend Bridge: Python's ollama client library to pass seller inputs directly to the local Gemma instance.

import streamlit as st
import ollama

st.title("🛍️ E-Commerce Product Description Generator")
st.write("Generate SEO-friendly titles, descriptions, and tags locally using Gemma!")

product_name = st.text_input("Product Name", placeholder="e.g., Handcrafted Leather Wallet")
keywords = st.text_area("Key Features / Keywords", placeholder="e.g., Genuine full-grain leather, 4 card slots, RFID blocking")
tone = st.selectbox("Tone of Voice", ["Professional & Elegant", "Casual & Friendly", "Bold & Catchy"])

if st.button("Generate Listing"):
    if product_name and keywords:
        with st.spinner("Generating listing using local Gemma model..."):
            prompt = f"""
            You are an expert e-commerce copywriter. Write a product listing based on these details:
            - Product: {product_name}
            - Features: {keywords}
            - Tone: {tone}

            Output format:
            1. Catchy Title (SEO optimized)
            2. Product Description (2-3 engaging paragraphs)
            3. Key Bullet Points
            4. 10 Recommended Search Tags / Keywords
            """

            response = ollama.chat(model='gemma:2b', messages=[
                {'role': 'user', 'content': prompt}
            ])

            st.success("Generated Successfully!")
            st.markdown(response['message']['content'])
    else:
        st.warning("Please provide a product name and features.")
Enter fullscreen mode Exit fullscreen mode

Why Does Open Innovation Matter?

Building with open-weight models like Gemma makes local tools viable for small side hustles in three key ways:

Zero Operating Costs ($0 API Fees): Small sellers shouldn't have to pay $20/month just to write product descriptions. Running gemma:2b locally means generating thousands of listings costs nothing beyond basic electricity.

Complete Data Privacy: Unreleased handmade designs, raw notes, or proprietary product specs never touch cloud servers or third-party training pipelines.

Offline Capability: Sellers can create product listings anytime, anywhere—even while travelling or working in areas without internet access.

My First User

I showed this tool to a friend who sells handmade products online. They tested it by generating a listing for a custom journal and loved that it created 10 ready-to-copy tags instantly—saving them 15 minutes per listing without needing a paid AI subscription.

Prize Categories

Best Use of Gemma (Using Google's Gemma model locally via Ollama)

Top comments (0)