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.
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
- 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
- Responsive design optimized for mobile
- Guest checkout capability
- Local pickup scheduling
- Delivery radius calculator
- Order tracking via email/SMS
- Customer account management
- Comprehensive inventory management
- Barcode scanning integration
- Bulk product imports (CSV)
- Order fulfillment system
- Analytics and reporting
- Customer management
- Stripe payment processing
- Multiple payment methods
- Local pickup option
- Delivery scheduling
- Email notifications
- Receipt generation
- Modern, clean interface
- Condition-based product badges
- Dynamic pricing displays
- Image optimization with Cloudinary
- SEO-optimized pages
- Performance monitoring
- 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)
- 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
- Supabase - PostgreSQL database and authentication
- Stripe - Payment processing
- Cloudinary - Image management and optimization
- Vercel - Hosting and deployment
- Cloudflare - CDN and security
- Google Analytics - Analytics and tracking
- Node.js 18+
- npm or yarn
- Supabase account
- Stripe account
- Cloudinary account
- Clone the repository
git clone <repository-url>
cd boom-warehouse- Install dependencies
npm install --legacy-peer-deps- Set up environment variables
cp .env.local.example .env.localFill in your environment variables:
- Supabase credentials
- Stripe keys
- Cloudinary settings
- Email configuration
- Create a new Supabase project
- Run the database migrations:
-- Execute the contents of supabase/migrations/001_initial_schema.sql
-- Execute the contents of supabase/seed.sql for sample dataStart the development server:
npm run devOpen http://localhost:3000 in your browser.
# 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 healFor detailed CLI documentation, see the Autonomous Listing section below.
npm run build
npm startThe application uses a comprehensive PostgreSQL schema including:
products- Product catalog with condition gradingcategories- Product categorizationorders- Order managementcustomers- Customer datacart_items- Shopping cart functionalityinventory_transactions- Inventory tracking
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
- Real-time stock tracking
- Reserved inventory for pending orders
- Automatic inventory adjustments
- Location-based organization
- Barcode scanning support
- Automated order number generation
- Inventory reservation on order
- Email notifications
- Tracking number integration
- Local pickup scheduling
- Connect your repository to Vercel
- Configure environment variables
- Deploy automatically on push to main
- Set up Row Level Security policies
- Configure database functions
- Set up real-time subscriptions
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
This project is proprietary software for Boom Warehouse.
-
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
-
Analyze a product
npm run cli analyze ./photos/iphone.jpg --verbose
-
Create listings
npm run cli list ./photos/iphone.jpg \ --platforms ebay,facebook,mercari \ --urgency balanced
The system uses 6 specialized AI agents:
- VisionAgent - Product identification via Claude vision
- MarketIntelAgent - Price analysis from sold listings
- PriceOptimizerAgent - Dynamic pricing strategies
- ImageProcessorAgent - Photo optimization per platform
- ListingExecutorAgent - Multi-marketplace posting
- SwarmOrchestrator - Coordinates entire pipeline
# 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- 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 | Method | Fee Structure |
|---|---|---|
| eBay | Official Sell API | 13.25% final value |
| 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 |
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>&1See CRON_SETUP.md for details.
SQLite database (data/boomware.db) with:
inventory- Product catalog with JSON datalistings- Multi-platform listing trackingprice_history- Price changes over timemarket_cache- Cached market researchagent_logs- Swarm operation logsscheduled_actions- Auto price dropsplatform_metrics- Performance analytics
// 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`);# 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 createdFor support and inquiries:
- Email: info@boomwarehouse.com
- Phone: (216) 555-0123
- Address: Warrensville Heights, OH