Skip to content

HouseScanner is an AI-powered house inspection app with agent-driven workflows and ready-to-run infrastructure for both local development and full production deployments.

Notifications You must be signed in to change notification settings

InonELGABSI/houseScanner

Repository files navigation

HouseScanner

AI-powered house inspection application with computer vision and intelligent checklist generation.

Screenshots

Processing scan progress Room photo upload interface
Individual room summary Overall scan summary report
Custom checklist editor

Tech Stack

  • Frontend: React, TypeScript, Vite, TailwindCSS, PWA
  • Backend: NestJS, Prisma, PostgreSQL
  • AI/ML: FastAPI, LangChain, LangGraph, OpenAI GPT-4
  • Storage: MinIO (S3-compatible), AWS S3
  • Cache: Redis, ElastiCache
  • Infrastructure: Kubernetes (Minikube, EKS), Helm, Docker, Terraform, Ansible
  • Monitoring: Prometheus, Grafana

AI Workflow Architecture (LangGraph)

The AI agents service uses LangGraph to orchestrate a sophisticated 6-agent pipeline with parallel processing:

flowchart TD
    START([📸 Upload Images]) --> A1[🏠 Agent 1: House Classification]
    A1 --> A2[📋 Agent 2: House Checklist]
    A2 --> PARALLEL[🔄 Parallel Room Processing]
    
    PARALLEL --> A3[🚪 Agent 3: Room Classification]
    PARALLEL --> A4[✅ Agent 4: Room Checklist] 
    PARALLEL --> A5[🛋️ Agent 5: Products Analysis]
    
    A3 --> A6[⚖️ Agent 6: Pros/Cons Analysis]
    A4 --> A6
    A5 --> A6
    
    A6 --> END([📊 Final Report])
    
    classDef startEnd fill:#e1f5fe
    classDef agents fill:#f3e5f5
    classDef parallel fill:#e8f5e8
    
    class START,END startEnd
    class A1,A2,A3,A4,A5,A6 agents
    class PARALLEL parallel
Loading

Key Features:

  • Parallel Processing: Rooms analyzed concurrently for 3-5x speedup
  • LangSmith Tracing: Live workflow monitoring at smith.langchain.com
  • Rate Limiting: Intelligent throttling (90K TPM, 500 RPM)
  • State Management: Persistent checkpointing with memory
  • Error Handling: Automatic retries with state preservation

Quick Start

Development (Docker Compose)

git clone https://github.com/InonELGABSI/houseScanner.git
cd houseScanner

# Setup environment files
cp client-pwa/.env.template client-pwa/.env
cp backend/.env.template backend/.env
cp agents-service/.env.template agents-service/.env

# Add your OpenAI API key to agents-service/.env
# OPENAI_API_KEY=your-key-here

# Start infrastructure and services
cd ansible && ansible-playbook dev-infra-setup.yml
cd .. && docker compose -f docker-compose.dev.yml up -d

Access: http://localhost:5173 (Login: housescanner@gmail.com / 12121212)

Development (Kubernetes)

# Start Minikube, build images, and deploy
make dev-setup

# Start port forwarding
make dev-ports

Access: http://localhost:3001

📖 Detailed instructions: DEV_SETUP.md


Production Deployment

Option 1: Docker on AWS EC2 (Ansible)

Simple deployment using Ansible to provision EC2 + RDS + S3.

cd ansible
ansible-playbook prod-all-steps.yml

Cost: ~$50-60/month

Option 2: Kubernetes on AWS EKS (Terraform)

Production-grade deployment with EKS, RDS, ElastiCache, and monitoring.

cd k8s/terraform/environments/prod
terraform init && terraform apply

cd ../../../
make prod-build && make prod-deploy

Cost: ~$150-200/month

📖 Detailed instructions: PROD_SETUP.md


Project Structure

├── client-pwa/          # React PWA frontend
├── backend/             # NestJS API
├── agents-service/      # FastAPI AI service (LangGraph)
├── ansible/             # Infrastructure automation
│   ├── dev-*           # Local development playbooks
│   └── prod-*          # AWS production playbooks
├── k8s/                 # Kubernetes manifests
│   ├── helm/           # Helm charts
│   ├── terraform/      # AWS infrastructure
│   └── environments/   # Dev/prod configs
├── scripts/             # Build and deployment scripts
└── .github/            # CI/CD workflows

Documentation

  • DEV_SETUP.md - Complete development environment guide (Docker Compose + Kubernetes)
  • PROD_SETUP.md - Production deployment guide (Ansible + Terraform/EKS)

License

MIT

About

HouseScanner is an AI-powered house inspection app with agent-driven workflows and ready-to-run infrastructure for both local development and full production deployments.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published