How oisintheginger/mscfinalproject works
Renting Made Easy is a rental-property browsing and account-management application. Users browse and filter listings, inspect property details, and can save searches, favourites, applications, and profile preferences; the frontend routes and pages are the visible workflow, while backend controllers and services provide property and user operations. The repository also contains Python similarity, distance, and property-scoring experiments, suggesting personalized recommendations and scores. Source evidence is partial, so links to unsampled API hooks, algorithm execution, and deployment integrations are omitted or marked unverified.
Main entry points: UserService.java User operations · Homepage.js Home recommendations · UserController.java User endpoints · App.js App providers
Components 25
Web experience
- App providers
frontend/src/App.js - Page router
frontend/src/Routers/HMERouter.js - Navigation layout
frontend/src/layouts/NavLayout.js
Property discovery
- Browse listings
frontend/src/Pages/Browse.js - Search and filters
frontend/src/components/SearchAndFilters/SearchAndFilter.js - Property details
frontend/src/Pages/PropertyPage.js - Home recommendations
frontend/src/Pages/Homepage.js - Property scores
frontend/src/components/PropertyScoresComponent/PropertyScoresComponent.js
User accounts
- Applications page
frontend/src/Pages/Applications.js - Profile page
frontend/src/Pages/Profile.js - Saved searches
frontend/src/components/SaveSearch/RenderSaveSearch.js - User context
frontend/src/Utils/UserContext/UserContext.js
Backend services
- Property endpoints
Backend/src/main/java/msc/rme/controller/PropertiesController.java - Property queries
Backend/src/main/java/msc/rme/service/PropertyService.java - User endpoints
Backend/src/main/java/msc/rme/controller/UserController.java - User operations
Backend/src/main/java/msc/rme/service/UserService.java - User data model
Backend/src/main/java/msc/rme/binding/User.java - Relational database
- Amazon Cognito
- Cognito account ops
Backend/src/main/java/msc/rme/service/CognitoService.java
Recommendation experiments
- Click similarity
Data/python+jupyter/sean_lambda/CosineSimilarityClickData/cosineSimilarityClickData.py - Hybrid similarity
Data/python+jupyter/sean_lambda/CosineSimilarityHybrid/cosineSimilarityHybrid.py - Distance scoring
Data/python+jupyter/sean_lambda/HaversineFormulaIterations/handler8_final_iteration.py - Property scoring
Data/python+jupyter/sean_lambda/PropertyScores/handler.py
Other components
- Renter
Connections 23
- Renter → App providers: opens app
frontend/src/App.js - App providers → Page router: renders routes
frontend/src/App.js - Page router → Navigation layout: wraps pages
frontend/src/Routers/HMERouter.js - Renter → Browse listings: browses homes
- Browse listings → Search and filters: offers filters
frontend/src/Pages/Browse.js - Renter → Property details: views listing
- Renter → Home recommendations: views suggestions
frontend/src/Pages/Homepage.js - Renter → Property scores: views scores
- Renter → Applications page: manages applications
- Renter → Profile page: manages profile
- Renter → Saved searches: manages searches
- Search and filters → Property endpoints: requests saved search
frontend/src/components/SearchAndFilters/SearchAndFilter.js - Property endpoints → Property queries: queries listings
Backend/src/main/java/msc/rme/controller/PropertiesController.java - User endpoints → User operations: delegates operations
Backend/src/main/java/msc/rme/controller/UserController.java - User operations → Relational database: reads and writes
Backend/src/main/java/msc/rme/service/UserService.java - Property queries → Relational database: queries properties
Backend/src/main/java/msc/rme/service/PropertyService.java - User operations → Cognito account ops: uses account service
Backend/src/main/java/msc/rme/service/UserService.java - Cognito account ops → Amazon Cognito: updates accounts
Backend/src/main/java/msc/rme/service/CognitoService.java - User endpoints → User data model: returns user data
Backend/src/main/java/msc/rme/controller/UserController.java - Click similarity → Home recommendations: may inform suggestions
- Hybrid similarity → Home recommendations: may inform suggestions
- Distance scoring → Property scoring: may contribute distance
- Property scoring → Property scores: may supply scores