pkrajanand / WeatherForecaster

Light-weight weather update application
0 stars 0 forks source link

Weather Forecaster (WeFor)

A light-weight weather reporting application based on OpenWeatherMap API.

This project is initiated while participating in an employment recruitment process in 2016. Later on, project is enhanced to try out new concepts and technologies.

Development Environment

System Requirement:

Launching application:

cd backend
gradle bootRun

./start_frontend.sh

Accessing application:

Running backend tests

cd backend
gradle clean test

Taking Backend Test coverage

cd backend
docker-compose -f docker-compose-sonar.yml up

http://localhost:9000/dashboard?id=com.recruitment%3Aweatherforecast

Technology Stack

Architectural Overview

Current implementation make use of a free service provided by Open Weather Map(http://openweathermap.org) for weather updates. But this could easily be replaced with another implementation since the respective services are designed in a loosely coupled fashion.

Application is built using Spring-Boot.

Production deployment

Need to fix the issues:

(1) Design production strategy for backend #13

(2) Design production strategy for Frontend #12

Configuration Options

The locations, for which weather updates could be displayed in the frontend, are now configurable through application.properties using a property "weather.cities". A change requires the restart of the server.