AI-Powered Moving Inventory Platform
Full-stack engineer building a React Native mobile app with on-device TensorFlow ML for automated household inventory detection and moving quote generation.
Technology consulting and product development agency building custom software solutions for startups and enterprises.
Project Overview
Built a mobile platform that uses machine learning to help users inventory their household belongings for moving. The app enables users to photograph rooms in their home, automatically detect and identify objects using on-device TensorFlow models, and generate accurate moving quotes based on their inventory.
The Product
Handled simplifies the moving estimation process by replacing manual inventory lists with AI-powered object detection:
- Photo Capture: Camera interface for photographing rooms and belongings
- Object Detection: TensorFlow Lite ML model identifies items in photos
- Inventory Management: Organize items by room with tagging and notes
- Quote Generation: Get moving estimates based on detected inventory
- Move Tracking: Manage origin/destination addresses and scheduling
Technical Architecture
Mobile App (React Native)
Cross-platform mobile application with ML integration:
- Framework: React Native 0.59 for iOS and Android
- State Management: Redux with Redux-Saga for async workflows
- Persistence: redux-persist for offline-first data storage
- ML Integration: TensorFlow Lite with SSDMobileNet model
- Authentication: Auth0 for secure login
- Navigation: React Navigation for screen routing
- Camera: react-native-camera for photo capture
- Maps: react-native-maps for address visualization
Backend (Koa/GraphQL)
TypeScript API with GraphQL interface:
- Framework: Koa with koa-router for REST endpoints
- API: Apollo Server with GraphQL schema
- Database: PostgreSQL with Knex query builder
- Authentication: JWT with Auth0 integration
- Storage: AWS S3 for photo uploads
- Events: Kafka for event streaming
- CRM: HubSpot integration for lead management
- Logging: Bunyan for structured logging
Key Contributions
TensorFlow Lite Integration
Implemented on-device machine learning for object detection:
- Integrated TensorFlow Lite React Native bridge for model inference
- Configured SSDMobileNet model for household object detection
- Built model loading system supporting both bundled and downloaded models
- Implemented confidence thresholds and result filtering for accuracy
- Created bounding box visualization for detected objects
React Native Mobile Development
Built comprehensive mobile application:
- Developed 19 screen components covering full user journey
- Created onboarding flow with permissions handling and tutorials
- Built photo capture interface with camera integration
- Implemented room-based inventory organization
- Developed item detail views with tagging and confirmation
- Set up offline-first state persistence with redux-persist migrations
GraphQL API Development
Created backend services for inventory and move management:
- Designed GraphQL schema for users, items, rooms, photos, and moves
- Implemented resolvers with DataLoader for efficient data fetching
- Built mutations for CRUD operations on inventory items
- Created move management with quotes and scheduling
- Integrated HubSpot for CRM and lead tracking
State Management Architecture
Implemented robust Redux architecture:
- Set up Redux-Saga for complex async workflows
- Built inventory state with room and item relationships
- Implemented photo upload saga with progress tracking
- Created state migrations for schema evolution
- Configured shallow and deep persistence strategies
Mobile App Features
Inventory Flow
- Create Room: Define rooms in the home (bedroom, kitchen, etc.)
- Take Photos: Capture photos of belongings in each room
- Object Detection: ML model identifies items in photos
- Confirm Items: Review and confirm detected items
- Add Details: Tag items as fragile, important, or rename them
Move Management
- Origin and destination address entry with geocoding
- Move date scheduling with availability
- Quote generation based on inventory volume
- Team size and truck recommendations
- Payment processing integration
User Account
- Auth0-based authentication
- Profile management
- Move history
- Support access
Data Models
Core Entities
- User: Account with moves and inventory
- Move: Origin/destination addresses, dates, quotes
- Room/Collection: Container for organizing items
- Item: Detected object with properties
- Photo: Image with detected items
- Quote: Moving estimate with pricing
ML Integration
- Labels: Object categories from ML model
- BoundingBox: Detected object positions
- Annotations: ML detection results
Development Environment
Mobile Build
- iOS builds via Xcode with CocoaPods
- Android builds with Gradle
- Metro bundler for JavaScript
- Reactotron for debugging
Backend
- TypeScript with strict typing
- Knex migrations for schema management
- ESLint and Prettier for code quality
- Nodemon for development reload
CI/CD
- App Center for mobile deployments
- Analytics and crash reporting
- Beta distribution for testing
Technologies Deep Dive
The technology choices balanced mobile performance with ML capabilities:
- TensorFlow Lite enabled on-device inference without network latency
- SSDMobileNet provided fast object detection suitable for mobile hardware
- Redux-Saga managed complex async flows like photo upload + ML detection
- redux-persist enabled offline-first architecture for unreliable network conditions
- GraphQL provided flexible querying for complex inventory relationships
- Kafka enabled event-driven architecture for move lifecycle tracking
Technologies
Key Highlights
- Integrated TensorFlow Lite for on-device object detection using SSDMobileNet model
- Built React Native mobile app for iOS and Android with camera-based inventory capture
- Developed GraphQL API with Koa and TypeScript for user, inventory, and move management
- Implemented Redux state management with offline-first persistence using redux-persist
- Created room-based inventory organization with photo attachments and item tagging