How prasad066/estatehub works
EstateHub is a real-estate marketplace for account management, property discovery and listings, favorites, and buyer/seller booking workflows. Users enter through the routed frontend, authenticate, and use buyer or seller dashboard features backed by API services and a backend that persists users, properties, favorites, and bookings. Property listings also upload images to Cloudinary. The source index and excerpts support the shown frontend routes, API handlers, and model calls; links from frontend services to backend routes are not shown directly, so they are omitted.
Main entry points: main.jsx App routing · properties.services.js Property API client · index.js Express server · property.controllers.js Property operations
Components 32
Frontend experience
- App routing
EstateHub_frontend/src/main.jsx - Home dashboards
EstateHub_frontend/src/components/Home/Home.jsx - Login and registration
EstateHub_frontend/src/components/auth/Login.jsx - Property browsing
EstateHub_frontend/src/components/dashboard/Properties.jsx - Property details
EstateHub_frontend/src/components/dashboard/Viewproperty.jsx - Seller listings
EstateHub_frontend/src/components/dashboard/Listings.jsx - Favorites
EstateHub_frontend/src/components/dashboard/Favorites.jsx - Buyer bookings
EstateHub_frontend/src/components/dashboard/Bookings.jsx - Seller requests
EstateHub_frontend/src/components/dashboard/Requests.jsx - Listing analytics
EstateHub_frontend/src/components/dashboard/Analytics.jsx - Profile management
EstateHub_frontend/src/components/dashboard/Profile.jsx
Client state and API
- User state
EstateHub_frontend/src/features/user.slice.js - Auth API client
EstateHub_frontend/src/services/auth.services.js - Property API client
EstateHub_frontend/src/services/properties.services.js - Favorites API client
EstateHub_frontend/src/services/favorite.services.js - Booking API client
EstateHub_frontend/src/services/booking.services.js
Backend API
- Express server
EstateHub_backend/index.js - User routes
EstateHub_backend/routes/user.routes.js - Property routes
EstateHub_backend/routes/property.routes.js - Favorite routes
EstateHub_backend/routes/favorite.routes.js - Booking routes
EstateHub_backend/routes/booking.routes.js
Marketplace operations
- Account operations
EstateHub_backend/controllers/user.controllers.js - Property operations
EstateHub_backend/controllers/property.controllers.js - Favorite operations
EstateHub_backend/controllers/favorite.controllers.js - Booking lifecycle
EstateHub_backend/controllers/booking.controllers.js
Persistence and media
- User records
EstateHub_backend/model/users.model.js - Property records
EstateHub_backend/model/property.model.js - Favorite records
EstateHub_backend/model/favorite.model.js - Booking records
EstateHub_backend/model/booking.model.js - Database connection
EstateHub_backend/database/db.connection.js
Other components
- Marketplace user
- Cloudinary image service
Connections 47
- Marketplace user → App routing: uses
EstateHub_frontend/src/main.jsx - App routing → Home dashboards: routes to
EstateHub_frontend/src/main.jsx - App routing → Login and registration: routes to
EstateHub_frontend/src/main.jsx - App routing → Property browsing: routes to
EstateHub_frontend/src/main.jsx - App routing → Property details: routes to
EstateHub_frontend/src/main.jsx - App routing → Seller listings: routes to
EstateHub_frontend/src/main.jsx - App routing → Favorites: routes to
EstateHub_frontend/src/main.jsx - App routing → Buyer bookings: routes to
EstateHub_frontend/src/main.jsx - App routing → Seller requests: routes to
EstateHub_frontend/src/main.jsx - App routing → Listing analytics: routes to
EstateHub_frontend/src/main.jsx - App routing → Profile management: routes to
EstateHub_frontend/src/main.jsx - App routing → User state: reads token
- Login and registration → Auth API client: calls
EstateHub_frontend/src/components/auth/Login.jsx - Login and registration → User state: updates
EstateHub_frontend/src/components/auth/Login.jsx - Profile management → Auth API client: calls
EstateHub_frontend/src/components/dashboard/Profile.jsx - Profile management → User state: reads state
EstateHub_frontend/src/components/dashboard/Profile.jsx - Property browsing → Property API client: calls
EstateHub_frontend/src/components/dashboard/Properties.jsx - Property browsing → Favorites API client: calls
EstateHub_frontend/src/components/dashboard/Properties.jsx - Seller listings → Property API client: calls
EstateHub_frontend/src/components/dashboard/Listings.jsx - Favorites → Property API client: calls
EstateHub_frontend/src/components/dashboard/Favorites.jsx - Favorites → Favorites API client: calls
EstateHub_frontend/src/components/dashboard/Favorites.jsx - Buyer bookings → Booking API client: calls
EstateHub_frontend/src/components/dashboard/Bookings.jsx - Buyer bookings → Property API client: calls
EstateHub_frontend/src/components/dashboard/Bookings.jsx - Buyer bookings → Auth API client: calls
EstateHub_frontend/src/components/dashboard/Bookings.jsx - Seller requests → Property API client: calls
EstateHub_frontend/src/components/dashboard/Requests.jsx - Seller requests → Booking API client: calls
EstateHub_frontend/src/components/dashboard/Requests.jsx - Seller requests → Auth API client: calls
EstateHub_frontend/src/components/dashboard/Requests.jsx - Listing analytics → Property API client: calls
EstateHub_frontend/src/components/dashboard/Analytics.jsx - Property details → Booking API client: calls
EstateHub_frontend/src/components/dashboard/Viewproperty.jsx - Property details → Property API client: calls
EstateHub_frontend/src/components/dashboard/Viewproperty.jsx - Express server → User routes: mounts
EstateHub_backend/index.js - Express server → Property routes: mounts
EstateHub_backend/index.js - Express server → Favorite routes: mounts
EstateHub_backend/index.js - Express server → Booking routes: mounts
EstateHub_backend/index.js - Express server → Database connection: connects
EstateHub_backend/index.js - User routes → Account operations: dispatches
EstateHub_backend/controllers/user.controllers.js - Property routes → Property operations: dispatches
EstateHub_backend/routes/property.routes.js - Favorite routes → Favorite operations: dispatches
EstateHub_backend/routes/favorite.routes.js - Booking routes → Booking lifecycle: dispatches
EstateHub_backend/routes/booking.routes.js - Account operations → User records: queries
EstateHub_backend/controllers/user.controllers.js - Property operations → Property records: queries
EstateHub_backend/controllers/property.controllers.js - Property operations → Booking records: deletes related
EstateHub_backend/controllers/property.controllers.js - Property operations → Cloudinary image service: uploads images
EstateHub_backend/controllers/property.controllers.js - Property routes → Property operations: uploads files
EstateHub_backend/routes/property.routes.js - Favorite operations → Favorite records: queries
EstateHub_backend/controllers/favorite.controllers.js - Booking lifecycle → Booking records: queries and updates
EstateHub_backend/controllers/booking.controllers.js - Booking lifecycle → Property records: checks availability
EstateHub_backend/controllers/booking.controllers.js