EasyHome is a full-stack real estate management platform that combines property management, geolocation features, and interactive maps using Angular, Spring Boot, PostgreSQL, and Google Maps APIs.
The platform is designed to support the management of real estate data through a web application connected to a backend API and a relational database. Location-based features are supported through Google Maps and Geocoding services.
This project was developed as an academic/university project.
The repository is kept public for documentation, portfolio, and reference purposes. It may not be actively maintained, but it can be reused, extended, or restarted in the future.
This repository is the unified monorepo version of the original EasyHome project.
The project was initially developed as two separate repositories:
easy-home-frontendeasy-home-backend
They were later merged into a single repository to provide a cleaner and more professional project structure while preserving the Git history of both components.
easy-home/
├── frontend/ # Angular frontend application
├── backend/ # Spring Boot backend application
├── README.md # Unified project documentation
└── docs/ # Optional project documentation
The original separation between frontend and backend is still preserved through the frontend/ and backend/ folders.
EasyHome provides a web-based environment for managing real estate-related data and location-based services.
Main features include:
- property and real estate data management;
- backend API for data handling and persistence;
- PostgreSQL database integration;
- Angular web frontend;
- Google Maps integration;
- Geocoding support for address and location features;
- separation between client-side and server-side logic;
- monorepo organization with frontend and backend in separate folders.
API keys are not included in this repository.
The current Google Maps key, if present in the local development setup, should be considered a development key.
To use your own Google Maps API key, update the frontend configuration where the Google Maps script is loaded
To run the project locally, both the backend and frontend must be configured.
The backend requires a PostgreSQL database, while the frontend requires Node.js, npm, and a valid Google Maps API key for map-related features.
From the root of the repository:
cd backendThe backend expects the following environment variables to be available on the system:
POSTGRES_USER
POSTGRES_PASSWORD
Example:
POSTGRES_USER=your_postgres_username
POSTGRES_PASSWORD=your_postgres_password
Open PostgreSQL using a tool such as DBeaver or pgAdmin.
Create a new database named:
EasyHome
If an older local copy of the database already exists, remove it before restoring the new one.
A database dump should be available inside the backend project, for example in a folder such as:
backend/dump/
After the database has been restored and the environment variables have been configured, run the backend from your IDE or terminal.
./mvnw spring-boot:runThe backend should start and expose its API on the configured local port.
Common Spring Boot default port:
http://localhost:8080
From the root of the repository:
cd frontendInstall the required npm dependencies:
npm installThe frontend uses Google Maps services.
Update the API key with your own development key if required.
Example:
<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY"></script>Start the Angular development server:
npm startThe frontend should be available at:
http://localhost:4200