A real estate application that allows users to search properties in Seattle using natural language and get AI-powered recommendations based on their preferences.
- Search properties in Seattle using natural language queries
- Save favorite properties to the database
- Get AI-powered property recommendations using vector similarity search
- Responsive UI with Tailwind CSS
- Real-time updates with Convex database
- React 18
- Vite
- Tailwind CSS
- TanStack Router (formerly React Router)
- Express.js
- Node.js
- Convex (for vector database)
- LangChain
- OpenAI
- OpenAI API (for embeddings and natural language processing)
- Zillow API (via RapidAPI)
Before running the application, make sure you have:
- Node.js installed
- An OpenAI API key
- A RapidAPI key with access to the Zillow API
- A Convex account
Create a .env
file in the root directory with the following variables:
OPENAI_API_KEY=your_openai_api_key
RAPID_API_KEY=your_rapid_api_key
VITE_CONVEX_URL=your_convex_url
- Install dependencies:
npm install
- Log in to Convex (if not already logged in):
npx convex login
You'll need three terminal windows to run all components:
- Start the Convex development server:
npx convex dev
- Start the Express backend server:
nodemon server.js
The server will run on http://localhost:3001
- Start the frontend development server:
npm run dev
The app will be available at http://localhost:5174
/src
- React frontend code/convex
- Convex database schema and functionsserver.js
- Express backend server/public
- Static assets
Contributions are welcome! If you'd like to contribute to this project:
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
This project is licensed under the MIT License.