A modern, professional MERN stack real estate platform for property listings and management.
Essential Guides:
- 📖 DEVELOPMENT_WORKFLOW.md - Complete development workflow for project owner and co-developers
- ⚡ QUICK_WORKFLOW.md - Quick reference for daily tasks
- 🚀 DEPLOYMENT_GUIDE.md - Comprehensive deployment instructions
- 🏃 QUICK_START.md - Get started in 5 minutes
Read DEVELOPMENT_WORKFLOW.md first for complete team workflow!
streamrock/
├── backend/ # Node.js + Express + MongoDB API
├── frontend/ # React + Vite + Tailwind CSS
├── mobile/ # React Native (Future Development)
├── DEVELOPMENT_WORKFLOW.md # Complete workflow guide
├── QUICK_WORKFLOW.md # Quick reference
├── DEPLOYMENT_GUIDE.md # Deployment instructions
└── README.md
- 🏠 Property Listings: Browse premium properties across multiple locations
- 🔍 Advanced Search: Filter by location, price, property type, and more
- 📱 Fully Responsive: Mobile-first design with tablet and desktop support
- 💼 Property Categories:
- Nuvali Properties
- Vermosa Properties
- Southmont Properties
- Batangas Beach Properties
- Pre-selling Properties
- Bank Foreclosed Properties
- 📧 Contact Forms: Direct inquiry system with MongoDB storage
- 🎨 Modern UI/UX: Clean, minimalist design with smooth animations
- ⚡ Fast Performance: Built with Vite for optimal loading speeds
- Node.js (v16 or higher)
- MongoDB Atlas account or local MongoDB
- npm or yarn
- Navigate to backend directory:
cd backend- Install dependencies:
npm install- Environment variables are already configured in
.env:
- MongoDB connection string included
- Default port: 5000
- Start the backend server:
npm run devThe backend will run on http://localhost:5000
- Navigate to frontend directory:
cd frontend- Install dependencies:
npm install- Start the development server:
npm run devThe frontend will run on http://localhost:3000
- Node.js - Runtime environment
- Express.js - Web framework
- MongoDB - Database
- Mongoose - ODM for MongoDB
- CORS - Cross-origin resource sharing
- dotenv - Environment variables
- React 18 - UI library
- Vite - Build tool
- Tailwind CSS - Utility-first CSS
- React Router - Navigation
- Axios - HTTP client
- React Icons - Icon library
-
Color Scheme:
- Primary:
#1a365d(Deep Blue) - Secondary:
#2c5282(Medium Blue) - Accent:
#c7996b(Gold/Bronze) - Light:
#f7fafc(Off White) - Dark:
#1a202c(Dark Gray)
- Primary:
-
Typography:
- Headings: Georgia (Serif)
- Body: Inter (Sans-serif)
-
Responsive Breakpoints:
- Mobile: < 768px
- Tablet: 768px - 1024px
- Desktop: > 1024px
The mobile/ directory is prepared for React Native development. See mobile/README.md for details.
GET /api/properties- Get all properties (supports filtering)GET /api/properties/:id- Get single propertyPOST /api/properties- Create propertyPUT /api/properties/:id- Update propertyDELETE /api/properties/:id- Delete property
GET /api/inquiries- Get all inquiriesGET /api/inquiries/:id- Get single inquiryPOST /api/inquiries- Create inquiryPATCH /api/inquiries/:id- Update inquiry status
cd backend
heroku create streamrock-api
git push heroku maincd frontend
npm run build
vercel --prodMONGODB_URI=mongodb+srv://grafrafraftorres28:y33CwzAkoHffENbQ@cluster0.0c5qorv.mongodb.net/?retryWrites=true&w=majority&appName=Cluster0
PORT=5000
NODE_ENV=development
- Home (
/) - Hero section, features, featured properties, contact form - Properties (
/properties) - Full property listings with filters - About (
/about) - Company information and values - Contact (
/contact) - Contact information and inquiry form
- MongoDB credentials are included (consider rotating for production)
- Add authentication middleware for admin routes
- Implement rate limiting for API endpoints
- Enable HTTPS in production
- Add input validation and sanitization
You can add properties via the API or directly in MongoDB:
POST /api/properties
{
"name": "Property Name",
"category": "Nuvali Properties",
"location": "Sta. Rosa, Laguna",
"price": 4500000,
"description": "Property description",
"propertyType": "House and Lot",
"bedrooms": 3,
"bathrooms": 2,
"lotArea": 120,
"featured": true
}This project is private and confidential.
Streamrock Realty Corporation
- Phone: +63 908 885 6169
- Email: info@streamrockrealty.com
- Address: Blk 8 Lot 3 Iris St., Camella Homes I, Brgy. Putatan, Muntinlupa City 1770
Replace the placeholder logo:
- Frontend:
frontend/public/favicon.svg - Update the navbar logo in
frontend/src/components/Navbar.jsx
Modify colors in frontend/tailwind.config.js:
colors: {
primary: '#1a365d',
secondary: '#2c5282',
accent: '#c7996b',
// ... add your colors
}- Backend API setup
- MongoDB connection
- React frontend with Vite
- Responsive design (mobile-first)
- Property listing and filtering
- Contact/inquiry forms
- Navigation and routing
- Sample property data
- Tailwind CSS styling
- React Native directory prepared
- Add authentication
- Add admin dashboard
- Deploy to production
- Add image upload
- Implement pagination
- Add property details page
- SEO optimization
Built with ❤️ for Streamrock Realty Corporation