Real Estate Website

Project Overview

Developed a full-stack real estate platform that supports three user roles: home buyers, home sellers, and real estate agents. The application allows home buyers to search, filter, view, and schedule visits for properties, and purchase homes. Home sellers can list properties with full details, while agents can manage transactions, view scheduled visits, and track property ownership.

Timeline

2 months

My Role

UI Designer / Full Stack Developer

Collaboration

One team of two students

  • Frontend: HTML/CSS/BootStrap/JavaScript

  • Backend: C#/RESTful API

  • Database: MySQL

Tech Stack

Key Design Features

Feature 1 - login page

Login page that allows home buyers, home sellers and real estate agents to login.

Feature 2 - Two-Factor Authentication feature

Two-factor authentication (2FA) layer to the login process, where users must verify their identity by entering a six digit code sent to their email, enhancing account security.

Allows home buyers to view every house that is being sold.

Feature 3 - House listings page

Implemented a property search feature with filtering options, allowing users to refine results based on criteria such as price, location, and property details.

Feature 4 - House filtering search

Final Design

Home Page UI

Two-Factor Authentication UI

House Listing UI

Sign up UI

Forgot Password UI

Search Filter UI

Schedule a visit UI

Technical Details

This full-stack real estate platform was built with HTML, CSS, Bootstrap, and JavaScript for the frontend, C# with a RESTful API for the backend, and MySQL for the database. The system supports three user roles—homebuyers, home sellers, and real estate agents—with role-based access control and two-factor authentication for secure logins.
Key features include:
  • CRUD operations on property listings (create, read, update, delete)
  • Property search, filtering, and scheduling home visits
  • Transaction management and ownership tracking for agents and buyers
The frontend communicates with the backend via RESTful API endpoints (GET, POST, PUT, DELETE), enabling dynamic updates without full page reloads. Challenges included managing asynchronous requests, validating user input, and ensuring proper API response handling.
This project strengthened my skills in full-stack development, RESTful API design, authentication flows, role-based access control, and building secure, data-driven applications.