Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
smdthiranjaya authored Apr 27, 2024
1 parent 660d82f commit 2d8fb0c
Showing 1 changed file with 47 additions and 0 deletions.
47 changes: 47 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,60 @@ https://geo360live.tech/
### React WebApp (Render) Hosted Link:
https://geo-360-1.onrender.com/

### YouTube Video Link:
https://www.youtube.com/watch?v=HyUKIbl_MlI

# Geo-360


Geo-360 is a React-based application designed to provide users with interactive geographical data visualization. Utilizing React with Leaflet for mapping, and a set of testing libraries for robust development, Geo-360 aims to deliver a seamless user experience in exploring geospatial information.

![Screenshot 2567-04-27 at 17 15 52](https://github.com/smdthiranjaya/Geo-360/assets/37227365/ff3de2ce-1e39-40eb-b7cf-425e740eb201)

## INTRODUCTION

### Objective
To develop a single-page application (SPA) and RESTful Web API that provide real-time weather updates (temperature, humidity, air pressure, wind speed) for Sri Lanka, enhancing the current weather information system.

Scope
• RESTful API: To serve real-time weather data.
• SPA: Interactive map displaying live weather data.
• Data Simulation: Use generated data for system testing.
• Cloud Deployment: Ensure scalability and accessibility.
• Security & Testing: Implement security measures and conduct thorough testing.

## SYSTEM DESIGN AND ARCHITECTURE

### Business Requirements

Explores the need for a real-time weather mapping system to improve upon Sri Lanka’s Department of Meteorology’s existing three-hour update cycle, utilizing IoT for live data on temperature, humidity, and air pressure across the island.

### REST API and SPA Design Overview

Details the design principles of a RESTful API and a React-based Single Page Application (SPA) to meet the project's goals, including data flow and user interaction.

### System Architecture and Deployment

Describes the technical architecture encompassing the backend server on Heroku, database integration using Heroku’s PostgreSQL, frontend deployment on Azure, domain management, and use of GitHub Actions for CI/CD.

### UML Sequence Diagram for Weather Data Processing

<img width="894" alt="Screenshot 2567-04-27 at 17 56 36" src="https://github.com/smdthiranjaya/Geo-360/assets/37227365/94655c5d-4535-49ad-8151-36cd7172003d">

### Deployment Diagram

<img width="714" alt="Screenshot 2567-04-27 at 17 55 40" src="https://github.com/smdthiranjaya/Geo-360/assets/37227365/859b92c4-b1af-4f6a-ac52-6ebf4a39149b">

## IMPLEMENTATION

### Weather REST API Details
Provides specifics on the REST API development with Node.js, including the use of Express, CORS, and other packages for backend functionality, along with Swagger for API documentation.
Live Map Single Page Application (SPA) Implementation
Outlines the creation of the React SPA using packages like Leaflet for mapping, detailing how the application consumes the API and presents data dynamically.

### Database and Cloud Integration
Discusses the use of Heroku's PostgreSQL for data storage and management, and Azure Web App Service for SPA hosting, ensuring a scalable cloud-based environment.

## Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
Expand Down

0 comments on commit 2d8fb0c

Please sign in to comment.