space

We found purchasing furniture & home accesories tedious; which is why we built space with the help of Perplexity. The space product allows us to speak via natural language to an ElevenLabs agent which guides us through the tedious process of buying furniture & showcasing how it would look like in our room.

In our personal experience we found that:

  • It takes a lot of mental effort & time to find what we actually want
  • It's hard to envision what the furniture would look like in our personal room

Which is why we built space. Traditional image generation tools can generate images of a given space and modify the product, but the products it generates don't exist in the real world. We solved this problem.

space Product

🎯 Project Overview

space streamlines the furtniture purchasing experience, by:

  • Gathering images from the users' room of choice
  • Conduct intelligent consultations with users through natural language
  • Extracting requirements from the user of their preferences
  • Doing a wide scan of the net with the help of Perplexity to scan for URLs of our products
  • Extracting data of the products via the use of Jina AI

🏗️ Architecture

Deployment Diagram

💻 Tech Stack

How the Perplexity API was Integrated?

We leverage Perplexity's Sonar Pro model with web search capabilities to discover furniture products across multiple UK retailers. The system uses targeted search queries with site-specific filters to find individual product pages, then employs Jina AI Reader to extract clean, structured content from retailer websites using custom CSS selectors. Perplexity's Sonar model then parses this content to extract structured product data (name, price, description, images). Advanced URL filtering ensures only valid product pages are processed, while intelligent parsing handles different retailer page structures. This creates a unified search experience that aggregates real-time product information from multiple sources with high accuracy and comprehensive coverage.

Reasoning and Retrieval Capabilities

Our system uses advanced URL filtering and retailer-specific CSS selectors to extract clean product information. The multi-stage reasoning pipeline includes intelligent product type matching, price validation, and concurrent processing for optimal performance. Users get comprehensive furniture recommendations with structured pricing, descriptions, and images from multiple sources in seconds, delivering higher accuracy than traditional search approaches.

🚀 Running the Project

Quick Start (Frontend Only)

The backend is deployed on Cloud Run, so you only need to run the frontend locally:

cd frontend
npm i
VITE_ELEVENLABS_AGENT_ID=your-agent-id
npm run dev
# Runs on http://localhost:5173

Visit http://localhost:5173 to use the app.

Full Local Development (Optional)

Only needed if you're developing backend features.

Environment Variables:

Create a .env file in the backend directory:

# Required
PERPLEXITY_API_KEY=your-perplexity-key

# Optional (for Google Cloud features)
GCS_BUCKET_NAME=your-bucket-name
GCP_PROJECT_ID=your-project-id
GCS_CREDENTIALS_PATH=path/to/service-account-key.json

Backend:

cd backend
python3 -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate
pip install -r requirements.txt
python main.py
# Runs on http://localhost:8000

Team

Built With

Share this project:

Updates