Rehouzd is a property estimation and buyer matching application that helps users find accurate property values and connects them with potential buyers.
- Overview
- Architecture
- Getting Started
- Local Development
- Deployment
- Documentation
- Technology Stack
- License
The Rehouzd MVP consists of:
- Frontend UI: A React-based web application for user interaction
- Backend API: A Node.js/Express API server for business logic
- Database: PostgreSQL for data storage
The application follows a microservices architecture with Docker containers:
- Frontend: React with TypeScript
- Backend: Node.js with Express and TypeScript
- Database: PostgreSQL
- Infrastructure: Azure App Service, Azure Container Registry, Azure PostgreSQL Flexible Server
- Clone the repository
git clone https://github.com/your-org/Rehouzd-MVP.git
cd Rehouzd-MVP
- Start with Docker Compose
docker-compose up
This will start all services:
- Frontend: http://localhost:3001
- Backend: http://localhost:5004
- Database: PostgreSQL running on port 5432
For detailed instructions on local development, see LOCAL-DEVELOPMENT.md
# Start all services
docker-compose up
# Rebuild and start
docker-compose up --build
# Stop all services
docker-compose down
# View logs
docker-compose logs -f [service-name]
Rehouzd can be deployed to Azure using GitHub Actions and Bicep templates.
For detailed deployment instructions, see DEPLOYMENT.md
The application uses GitHub Actions for continuous integration and deployment:
- Build and test
- Build Docker images
- Push to Azure Container Registry
- Deploy to Azure App Service
- Setup staging and production environments
- Local Development Guide
- Deployment Guide
- API Documentation (To be added)
- Frontend Documentation (To be added)
- React
- TypeScript
- Chakra UI
- Redux (with Redux Toolkit)
- React Router
- Node.js
- Express
- TypeScript
- PostgreSQL
- Passport.js (Authentication)
- Docker
- GitHub Actions
- Azure (App Service, Container Registry, PostgreSQL, Key Vault)
- Bicep (Infrastructure as Code)
For questions or support, please contact the team at [email protected]