Skip to content

tabletman/boomware-house

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

17 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Boom Warehouse E-Commerce + Autonomous Listing Platform

This is a general guideline. the below frameworks and technologies if they are conflicting with existing plan from Agent Wise and the boilerplate. Follow what agent-wise and the boilerplate code suggests first.

A modern, full-stack e-commerce platform built for Boom Warehouse - a used electronics and appliances business in Warrensville Heights, OH.

NEW: Now with AI-powered autonomous multi-marketplace listing system that automatically identifies, prices, and lists products across eBay, Facebook Marketplace, instagram and others to follow. Starting with eBay and meta.

Features

πŸ€– Autonomous Listing System (NEW!)

Snap photos β†’ AI analyzes β†’ Smart pricing β†’ Auto-list to 5+ marketplaces

  • Vision AI: Automatic product identification via Claude 3.5 Sonnet
  • Market Intelligence: Real-time pricing from eBay sold listings
  • Smart Pricing: 20% below market average for fast sales
  • Multi-Platform: eBay (API) + Facebook/Mercari/Poshmark/OfferUp (automation)
  • Self-Healing: Automatic retry of failed listings
  • Analytics: Track sales performance across platforms
  • CLI Tools: Command-line interface for batch processing
  • Cron Automation: Hands-off operation with scheduled tasks

πŸͺ Core E-Commerce

  • Complete product catalog with advanced filtering
  • Professional condition grading system (Grade A-D)
  • Serial number tracking for electronics
  • Real-time inventory management
  • Shopping cart and checkout system
  • Order tracking and management

πŸ“± Customer Experience

  • Responsive design optimized for mobile
  • Guest checkout capability
  • Local pickup scheduling
  • Delivery radius calculator
  • Order tracking via email/SMS
  • Customer account management

πŸ”§ Admin Dashboard

  • Comprehensive inventory management
  • Barcode scanning integration
  • Bulk product imports (CSV)
  • Order fulfillment system
  • Analytics and reporting
  • Customer management

πŸ’³ Payment & Fulfillment

  • Stripe payment processing
  • Multiple payment methods
  • Local pickup option
  • Delivery scheduling
  • Email notifications
  • Receipt generation

🎨 Design & UX

  • Modern, clean interface
  • Condition-based product badges
  • Dynamic pricing displays
  • Image optimization with Cloudinary
  • SEO-optimized pages
  • Performance monitoring

Tech Stack

Autonomous Listing System

  • Vision AI: Claude 3.5 Sonnet (Anthropic)
  • Browser Automation: Playwright
  • Database: SQLite (inventory) + Supabase (app data)
  • Image Processing: Sharp + remove.bg API
  • APIs: eBay Sell API, Anthropic Claude
  • Job Queues: Node.js EventEmitter (future: BullMQ + Redis)

Frontend

  • Next.js 14 - React framework with App Router
  • TypeScript - Type safety and developer experience
  • Tailwind CSS - Utility-first styling
  • Radix UI - Accessible component primitives
  • Lucide React - Beautiful icons
  • React Hook Form - Form management
  • Zod - Schema validation

Backend & Database

  • Supabase - PostgreSQL database and authentication
  • Stripe - Payment processing
  • Cloudinary - Image management and optimization

Infrastructure

  • Vercel - Hosting and deployment
  • Cloudflare - CDN and security
  • Google Analytics - Analytics and tracking

Getting Started

Prerequisites

  • Node.js 18+
  • npm or yarn
  • Supabase account
  • Stripe account
  • Cloudinary account

Environment Setup

  1. Clone the repository
git clone <repository-url>
cd boom-warehouse
  1. Install dependencies
npm install --legacy-peer-deps
  1. Set up environment variables
cp .env.local.example .env.local

Fill in your environment variables:

  • Supabase credentials
  • Stripe keys
  • Cloudinary settings
  • Email configuration

Database Setup

  1. Create a new Supabase project
  2. Run the database migrations:
-- Execute the contents of supabase/migrations/001_initial_schema.sql
-- Execute the contents of supabase/seed.sql for sample data

Development

Start the development server:

npm run dev

Open http://localhost:3000 in your browser.

Autonomous Listing CLI

# Analyze a product
npm run cli analyze ./photos/item.jpg

# List on eBay and Facebook
npm run cli list ./photos/item.jpg --platforms ebay,facebook

# Process entire folder
npm run cli batch ./photos/ --auto

# View inventory
npm run cli inventory

# Sales report
npm run cli sales --last 30

# Retry failed listings
npm run cli heal

For detailed CLI documentation, see the Autonomous Listing section below.

Building for Production

npm run build
npm start

Database Schema

The application uses a comprehensive PostgreSQL schema including:

  • products - Product catalog with condition grading
  • categories - Product categorization
  • orders - Order management
  • customers - Customer data
  • cart_items - Shopping cart functionality
  • inventory_transactions - Inventory tracking

Key Features Implementation

Condition Grading System

Products are graded A through D with:

  • Grade A: Excellent condition, minimal wear
  • Grade B: Good condition, light wear
  • Grade C: Fair condition, noticeable wear
  • Grade D: Poor cosmetic condition, fully functional

Inventory Management

  • Real-time stock tracking
  • Reserved inventory for pending orders
  • Automatic inventory adjustments
  • Location-based organization
  • Barcode scanning support

Order Processing

  • Automated order number generation
  • Inventory reservation on order
  • Email notifications
  • Tracking number integration
  • Local pickup scheduling

Deployment

Vercel Deployment

  1. Connect your repository to Vercel
  2. Configure environment variables
  3. Deploy automatically on push to main

Supabase Configuration

  1. Set up Row Level Security policies
  2. Configure database functions
  3. Set up real-time subscriptions

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push to the branch
  5. Create a Pull Request

License

This project is proprietary software for Boom Warehouse.


πŸ€– Autonomous Listing System

Quick Start

  1. Set up API keys

    # Add to .env.local
    ANTHROPIC_API_KEY=sk-ant-xxx
    EBAY_APP_ID=your_app_id
    EBAY_CERT_ID=your_cert_id
    EBAY_DEV_ID=your_dev_id
    REMOVE_BG_API_KEY=your_api_key  # optional
  2. Analyze a product

    npm run cli analyze ./photos/iphone.jpg --verbose
  3. Create listings

    npm run cli list ./photos/iphone.jpg \
      --platforms ebay,facebook,mercari \
      --urgency balanced

Agent Architecture

The system uses 6 specialized AI agents:

  1. VisionAgent - Product identification via Claude vision
  2. MarketIntelAgent - Price analysis from sold listings
  3. PriceOptimizerAgent - Dynamic pricing strategies
  4. ImageProcessorAgent - Photo optimization per platform
  5. ListingExecutorAgent - Multi-marketplace posting
  6. SwarmOrchestrator - Coordinates entire pipeline

CLI Commands

# Analysis only (no listing)
npm run cli analyze <images...> [--verbose]

# Create listings
npm run cli list <images...> \
  --platforms ebay,facebook,mercari \
  --urgency fast_sale|balanced|maximize_profit

# Batch process folder
npm run cli batch <directory> \
  --platforms ebay,facebook \
  --concurrent 3 \
  --auto

# View inventory
npm run cli inventory \
  --status listed|sold \
  --limit 20

# Sales analytics
npm run cli sales --last 30

# Retry failed listings
npm run cli heal

# Sync statuses
npm run cli sync

Pricing Strategies

  • Fast Sale: 20th percentile (20% below market)
  • Balanced: 5% below market mean
  • Maximize Profit: 80th percentile
  • Auto price drops at day 7, 14, 21

Platform Support

Platform Method Fee Structure
eBay Official Sell API 13.25% final value
Facebook Playwright automation 0% (local) / 5% (shipping)
Mercari Playwright automation 12.9% (10% + 2.9% payment)
Poshmark Playwright automation 20% flat
OfferUp Playwright automation 0% free

Cron Automation

Set up hands-off operation:

# Install cron jobs
crontab -e

# Add these lines:
0 */6 * * * cd /path/to/boomware-house && npm run cron:heal >> logs/heal.log 2>&1
0 9 * * * cd /path/to/boomware-house && npm run cron:prices >> logs/price-drops.log 2>&1
0 3 * * 0 cd /path/to/boomware-house && npm run cron:cleanup >> logs/cleanup.log 2>&1
0 8 * * * cd /path/to/boomware-house && npm run cron:metrics >> logs/metrics.log 2>&1

See CRON_SETUP.md for details.

Database Schema (Autonomous Listing)

SQLite database (data/boomware.db) with:

  • inventory - Product catalog with JSON data
  • listings - Multi-platform listing tracking
  • price_history - Price changes over time
  • market_cache - Cached market research
  • agent_logs - Swarm operation logs
  • scheduled_actions - Auto price drops
  • platform_metrics - Performance analytics

Example Workflow

// Complete pipeline
const orchestrator = new SwarmOrchestrator();

const result = await orchestrator.processAndList(
  ['./photos/iphone-front.jpg', './photos/iphone-back.jpg'],
  {
    platforms: ['ebay', 'facebook', 'mercari'],
    urgency: 'balanced',
    optimizeImages: true
  }
);

console.log(`Listed ${result.productName} on ${result.listings.length} platforms`);

Testing

# Test inventory manager
tsx scripts/test-inventory-manager.ts

# Expected output:
βœ… Created inventory item
βœ… Created eBay listing
βœ… Created Facebook listing
βœ… Simulated success
βœ… Simulated failure
βœ… Tracked price history
βœ… Processed sale: Net profit $550
βœ… Generated sales analytics
βœ… Tested failed listing recovery
βœ… Search functionality works
βœ… Database backup created

Support

For support and inquiries:

About

Boom Warehouse - E-commerce site with full inventory system

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5

Languages