Skip to content

wpplumber/bolt-voice-store

Repository files navigation

TinyKicks - AI Voice-Powered Vendure Store

Netlify Status

About the Project

TinyKicks is an innovative e-commerce platform that combines modern web technologies with AI-powered voice search to create a seamless shopping experience. Built for the Bolt.new Hackathon, this project demonstrates the future of conversational commerce.

What is the Aim

Observing how parents shop for their children - often while multitasking, holding babies, or in situations where traditional typing and clicking interfaces are inconvenient. I created a shopping experience that feels as natural as asking a friend for recommendations.

The vision is to build a store where parents could simply say "Show me running shoes under $50" or "Find comfortable shoes for my toddler" and get intelligent, personalized results with natural voice responses.

What I Learned

This project was a deep dive into several cutting-edge technologies:

🎀 Voice AI Integration

  • Speech Recognition: Implemented both Web Speech API and ElevenLabs for robust voice input
  • Text-to-Speech: Used ElevenLabs' premium voices with Web Speech API fallback
  • Natural Language Processing: Built custom parsing logic to understand shopping queries

πŸ›’ E-commerce Backend Integration

  • Vendure Integration: Connected to a live Vendure e-commerce backend
  • GraphQL: Implemented type-safe GraphQL queries for products and collections
  • Real-time Data: Built dynamic product search with live inventory data

🎨 Modern Frontend Architecture

  • Astro Framework: Leveraged Astro's island architecture for optimal performance
  • Vue.js Components: Created interactive components with Vue 3 Composition API
  • Tailwind CSS + DaisyUI: Implemented responsive, accessible design system

πŸ”§ Advanced Development Practices

  • TypeScript: Maintained type safety across the entire application
  • Modular Architecture: Organized code into clean, reusable services and components
  • Error Handling: Implemented robust fallback systems for voice features

How I Built It

Architecture Overview

Frontend (Astro + Vue) β†’ Voice Services β†’ Vendure Backend
                      ↓
                 ElevenLabs API

Key Components Built

1. Voice Search System

  • VoiceSearchModal.vue: Full-screen voice interface with real-time feedback
  • VendureVoiceService.ts: Core service handling speech-to-text, product search, and text-to-speech
  • Smart Query Parsing: Extracts price ranges, categories, and keywords from natural language

2. E-commerce Integration

  • Vendure GraphQL Client: Type-safe connection to live product database
  • Dynamic Product Display: Real-time product cards with live inventory status
  • Category Management: Automatic category detection from Vendure collections

3. User Experience Features

  • Responsive Design: Mobile-first approach with touch-friendly interfaces
  • Loading States: Shimmer effects and progress indicators
  • Error Handling: Graceful fallbacks when voice features aren't available
  • Accessibility: Screen reader support and keyboard navigation

4. Performance Optimizations

  • Astro Islands: Only hydrate interactive components
  • Image Optimization: Lazy loading with Pexels integration
  • Caching Strategy: Smart caching of product data and categories

Technical Implementation Highlights

Voice Query Processing

// Example of natural language parsing
"Show me running shoes under $50" β†’ {
  category: "running",
  maxPrice: 50,
  keywords: ["shoes"]
}

Real-time Product Search

  • Connected to live Vendure instance at vendure.tarikrital.website
  • Dynamic category extraction from actual product collections
  • Intelligent fallback to mock data for demonstration

Multi-modal Interface

  • Voice-first: Primary interaction through speech
  • Touch-friendly: Category buttons and visual search
  • Keyboard accessible: Full keyboard navigation support

Challenges Faced & Solutions

1. Voice Recognition Reliability

Challenge: Browser speech recognition varies across devices and environments.

Solution: Implemented dual-layer approach:

  • Primary: Web Speech API (free, fast)
  • Fallback: ElevenLabs Speech-to-Text (premium, reliable)
  • Graceful degradation to text input

2. Real-time E-commerce Integration

Challenge: Connecting to live Vendure backend while maintaining performance.

Solution:

  • Implemented smart caching strategies
  • Built type-safe GraphQL integration
  • Created fallback mock data system

3. Natural Language Understanding

Challenge: Parsing diverse shopping queries accurately.

Solution:

  • Built custom NLP logic for e-commerce context
  • Implemented fuzzy matching for categories
  • Added smart synonym detection

4. Cross-browser Compatibility

Challenge: Voice features work differently across browsers.

Solution:

  • Comprehensive feature detection
  • Multiple fallback layers
  • Progressive enhancement approach

5. TypeScript Integration

Challenge: Maintaining type safety with dynamic GraphQL responses.

Solution:

  • Created comprehensive TypeScript interfaces
  • Implemented proper type assertions
  • Built type-safe service layer

Key Features Delivered

🎯 Core Functionality

  • βœ… Voice Product Search: Natural language product discovery
  • βœ… Live E-commerce Backend: Real Vendure integration
  • βœ… Intelligent Responses: AI-powered product recommendations
  • βœ… Responsive Design: Works on all devices

πŸš€ Advanced Features

  • βœ… Multi-modal Interface: Voice + touch + keyboard
  • βœ… Real-time Inventory: Live stock status
  • βœ… Smart Categorization: Dynamic category detection
  • βœ… Error Recovery: Robust fallback systems

🎨 User Experience

  • βœ… Intuitive Voice UI: Clear visual feedback during voice interactions
  • βœ… Loading States: Engaging shimmer effects and progress indicators
  • βœ… Accessibility: Screen reader and keyboard support
  • βœ… Performance: Fast loading with Astro's island architecture

Technology Stack

Frontend

  • Astro 4.5.6: Modern static site generator with island architecture
  • Vue 3.4.21: Reactive components with Composition API
  • TypeScript: Type-safe development
  • Tailwind CSS + DaisyUI: Utility-first styling with component library

Backend & APIs

  • Vendure: Headless e-commerce platform
  • GraphQL: Type-safe API queries
  • ElevenLabs: Premium voice AI services

Development Tools

  • GraphQL Code Generator: Automatic type generation
  • Vite: Fast development server
  • ESLint + Prettier: Code quality and formatting

Future Enhancements

  • Umbraco Integration: Product storytelling and content management
  • Advanced NLP: More sophisticated query understanding
  • Voice Commerce: Complete voice-driven checkout process
  • Personalization: User preference learning
  • Multi-language Support: International voice commerce

Conclusion

TinyKicks demonstrates the potential of voice-first e-commerce, combining cutting-edge AI with practical shopping needs. The project showcases how modern web technologies can create more natural, accessible, and engaging user experiences.

The integration of real-time e-commerce data with intelligent voice interfaces opens new possibilities for how we interact with online stores, making shopping more conversational and human-centered.


Built from πŸ‡²πŸ‡¦ using Bolt.new for rapid prototyping and development.

About

AI Voice-Powered Shoe Store (Bolt.new Hackathon)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published