Skip to content

Abilash10/EstateElite-soen341projectF2023

Repository files navigation

EstateElite-soen341projectF2023

Description of the project

A real-estate webapp with our personalized features. The core features consist of searching for properties (based on filter criterias such location, pricing, amenities, rooms, living and lot areas, time in the market parking availability, garage space, building type and year built). In addition, a map view will be a feature that shows the location of each property on an interactive map with the Google Maps API.

Team members and roles

  • Abilash Sasitharan - Role: Front-End development. SOEN student. Background in: HTML, CSS, Javascript & Java
  • Joerexpradeepan Thambaiah - Role: Back-End. COEN student. Background in: C++, Python & Java
  • Killian Hedou - Role: Front-End development. SOEN student. Background in: HTML, CSS, Javascript & Java
  • Kateryna Sizova - Role: Back-End development. COEN student. Background in: C++ & Java
  • Nabih El-helou - Role: Front-End development. SOEN student. Background in: HTML, CSS, Javascript, Java & C++
  • Penoelo Thibeaud - Role: Back-End development. COEN student. Background in: C++, Python & Java

Project approach and Technology

We will be using the MERN tech stack.
Front-End: React
Back-End: Node.js & Express.js
Database: MongoDB
The Google Maps API will be used to show location of properties on a map.

To host our webapp, we have a DigitalOcean server.

The reason these technologies were chosen is because we really wanted to use React for our front-end. It is a very useful framework to know, being used in many companies today. Furthermore, we wanted to use MongoDB over an SQL database since our research led us to believe it would be easier to learn and implement for our project. A big element we had to consider as well was every team member needs to learn the language needed for the project. The MERN stack is built on javascript, so we mainly need to focus our learning on one language.
To arrive to our tech-stack decision we did assessments on several front-end and back-end frameworks.

Backend Frameworks

Django (Python)
Strengths: Comprehensive, built-in admin, ORM support.
Drawbacks: Can be overkill for simple apps, slightly steeper learning curve.

Express.js (Node.js)
Strengths: Lightweight, flexible, vast npm ecosystem.
Drawbacks: Less structured, might require more manual configurations.

Spring Boot (Java)
Strengths: Robust, great for enterprise applications, strong security features.
Drawbacks: Heavier, more verbose, steeper learning curve for newcomers.

Frontend Frameworks

React.js
Strengths: Component-based, vast ecosystem, virtual DOM for efficiency. Very prevalent in workforce.
Drawbacks: Only a library (for the view layer), requires additional tools for full-fledged SPA.

Vue.js
Strengths: Intuitive, easy learning curve.
Drawbacks: Smaller community compared to React, fewer job opportunities.

Angular
Strengths: Full-fledged framework, two-way data binding, TypeScript integration.
Drawbacks: Steeper learning curve, heavy for simple applications.

Installation & Usage Instructions

MERN Full Guide
MongoDB Usage Guide
Creating a React Application
Installing Express.js
Downloading Node.js

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors