Geo Earth is a web application that provides interactive visualization of geographic data on a global map. It allows users to explore various country-related information such as population, area, capital, currency, and more. The application is built using React, Mapbox GL JS, Spring Boot, PostgreSQL, and PostGIS.
- React
- Mapbox GL JS
- Spring Boot
- PostgreSQL
- PostGIS
-
Interactive map: The application displays a world map powered by Mapbox GL JS, allowing users to zoom in, pan, and explore different regions.
-
Country data: Each country is represented as a polygon on the map, and users can click on a country to select or deselect it. Selected countries are highlighted, and their population and area are tracked.
-
Search functionality: Users can search for specific countries using the built-in search feature powered by Mapbox Geocoding API.
-
Total counters: The application shows total population and total area counters, which update dynamically as countries are selected or deselected.
Follow these instructions to set up and run the geo-earth application on your local machine.
Make sure you have the following software installed on your machine:
- Node.js (version 18.16.10 or higher)
- npm (version 8.19.4 or higher)
- Java Development Kit (JDK) (version 20 or higher)
- Maven (version 3.9.2 or higher)
- Spring Boot CLI (version 3.1.0 or higher)
You can download Node.js and npm from the official Node.js website: https://nodejs.org
The Java Development Kit (JDK) can be downloaded from the Oracle website or through a package manager like Homebrew (for macOS users) or apt-get (for Linux users).
- Clone the repository:
git clone https://github.com/king7saksham/geo-earth.git
- Navigate to the project directory:
cd geo-earth
- Set up the frontend:
-
Open a terminal and navigate to the worldmap directory.
-
Install the dependencies:
npm install
- Start the backend server:
-
Open a terminal and navigate to the country directory.
-
Build the project:
mvn clean package
- Run the server:
java -jar target/country-0.0.1-SNAPSHOT.jar
Select countries by clicking on them
Search for specific countries (Right-click to open info card)
- Start the frontend development server:
npm start
- Open your web browser and visit http://localhost:3000 to access the Geo Earth application.
This project is licensed under the MIT License.
This project would not have been possible without the contributions of the following technologies and communities: