Skip to content

software-students-spring2024/5-final-project-spring-2024-namelessssss

Repository files navigation

Weater Data CI Web App CI

Nameless Weather App

The Nameless Weather App is a web-based weather forecasting web-based application that utilizes OpenWeatherMap's API in order to collect real-time weather data. Users may use the web application's user-friendly interface to select which major city they would like to retrieve weather information about and to select their preferred temperature unit. The app then displays real-time information about the weather in that city, including its temperature, humidity, wind speed, and overall weather condition.

System Architecture

The Nameless Weather App is made up of two major subsystems:

  1. Weather Data Collection Subsystem: This subsystem is responsible for collecting real-time weather data from OpenWeatherMap's API. It fetches data such as temperature, humidity, wind speed, and weather condition. Then the data is stored in the MongoDB database.

https://hub.docker.com/r/kalados/weather-data-collect

  1. Web Application Subsystem: This subsystem is a web application that displays the real-time weather data fetched by the first subsystem. Users can select their location to receive the current weather information.

https://hub.docker.com/r/kalados/web-app

Instructions

API Key Setup

  1. Obtain an OpenWeatherMap API key by following these steps:
    • Log into your OpenWeatherMap API account and navigate to the API keys page.
    • Copy the generated API key

Note: the free tier of the subscription is sufficient for this application

  1. Insert the API key into the Dockerfile in the weather-data-collect directory.
    • Replace API_KEY_HERE with your OpenWeatherMap API key.
    • Save the changes.

Running the Application with Docker

  1. Open a terminal and navigate to the root folder of the project.
  2. Run the command docker-compose up --build to build and start the application containers.

Accessing the Web Application

  1. Open a web browser and visit localhost:5050 to access the Nameless Weather App web application.
  2. From the first dropdown, select which major city you would like to retrieve weather data from. Then from the second, select which unit of temperature you would like to recieve the data in.
  3. Click the Check Weather button to submit your request.
  4. The application will display the real-time weather data for the selected city, including it's current temperature, humidity level, wind speed, and overall weather condition.
  5. To get information about another city or update the information you already have to represent the current time, repeat steps 2-3 as needed.

You can also access the Digital Ocean version here: https://king-prawn-app-kaj2g.ondigitalocean.app/namelessWeatherApp

Contributors

About

5-final-project-spring-2024-namelessssss created by GitHub Classroom

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published