{"id":17838135,"url":"https://github.com/vineet1025/weather-app","last_synced_at":"2026-04-30T10:34:47.725Z","repository":{"id":259112676,"uuid":"875539136","full_name":"Vineet1025/Weather-App","owner":"Vineet1025","description":"Real-Time Weather Monitoring System","archived":false,"fork":false,"pushed_at":"2024-10-24T13:07:49.000Z","size":99,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-08T04:45:52.785Z","etag":null,"topics":["hibernate","java","springboot","sql","thymeleaf"],"latest_commit_sha":null,"homepage":"http://13.201.204.129:8000/home","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Vineet1025.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-10-20T08:54:57.000Z","updated_at":"2024-11-24T14:37:54.000Z","dependencies_parsed_at":"2024-10-27T21:36:38.437Z","dependency_job_id":"da5479b4-64a5-487c-a798-a3996b1b4b53","html_url":"https://github.com/Vineet1025/Weather-App","commit_stats":null,"previous_names":["vineet1025/weather-app"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vineet1025%2FWeather-App","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vineet1025%2FWeather-App/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vineet1025%2FWeather-App/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Vineet1025%2FWeather-App/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Vineet1025","download_url":"https://codeload.github.com/Vineet1025/Weather-App/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246827758,"owners_count":20840464,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["hibernate","java","springboot","sql","thymeleaf"],"created_at":"2024-10-27T20:52:25.762Z","updated_at":"2026-04-30T10:34:47.678Z","avatar_url":"https://github.com/Vineet1025.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n  \u003ch1\u003eReal-Time Weather Monitoring System\u003c/h1\u003e\n\u003ch3\u003e\n  :zap: \u003ca href=\"http://13.201.204.129:8000/home\"\u003eLive Project \u003c/a\u003e\n\u003c/h3\u003e\n   \n\u003c/p\u003e\n  \n  \u003c/div\u003e\n\n\n\u003c!-- Table of Contents --\u003e\n# :notebook_with_decorative_cover: Table of Contents\n\n- [About the Project](#star2-about-the-project)\n  * [Screenshots](#camera-screenshots)\n  * [Technologies Used](#space_invader-technologies-used)\n  * [Features](#dart-features)\n  * [Environment Variables](#key-environment-variables)\n- [Getting Started](#toolbox-getting-started)\n  * [Prerequisites](#bangbang-prerequisites)\n  * [Installation](#gear-installation)\n- [Deployment](#deployment)\n- [Usage](#eyes-usage)\n- [Contributing](#wave-contributing)\n- [License](#warning-license)\n- [Contact](#handshake-contact)\n- [Acknowledgements](#gem-acknowledgements)\n\n\n\u003c!-- About the Project --\u003e\n## :star2: About the Project\nThe Real-Time Weather Monitoring System is a robust application designed to fetch, monitor, and analyze weather data for multiple cities in the world. The system utilizes the OpenWeatherMap API to retrieve real-time weather information and alerts users based on customizable temperature thresholds. It features an intuitive user interface built with Spring Boot, Thymeleaf, and Hibernate for seamless interaction and data management.\n\n\u003c!-- Screenshots --\u003e\n### :camera: Screenshots\n\n\u003cdiv align=\"center\"\u003e\n  \u003ctable\u003e\n    \u003ctr\u003e\n      \u003ctd\u003e\u003cimg src=\"https://res.cloudinary.com/divq45mjo/image/upload/v1729583080/Screenshot_2024-10-22_130122_cyn8wg.png\" alt=\"screenshot\" width=\"400\"/\u003e\u003c/td\u003e\n      \u003ctd\u003e\u003cimg src=\"https://res.cloudinary.com/divq45mjo/image/upload/v1729583080/Screenshot_2024-10-22_130144_dfsmjv.png\" alt=\"screenshot\" width=\"400\"/\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n      \u003ctd\u003e\u003cimg src=\"https://res.cloudinary.com/divq45mjo/image/upload/v1729583079/Screenshot_2024-10-22_131251_o8znjg.png\" alt=\"screenshot\" width=\"400\"/\u003e\u003c/td\u003e\n      \u003ctd\u003e\u003cimg src=\"https://res.cloudinary.com/divq45mjo/image/upload/v1729583080/Screenshot_2024-10-22_131325_lvrb43.png\" alt=\"screenshot\" width=\"400\"/\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/table\u003e\n\u003c/div\u003e\n\n  \n  \n\u003c/div\u003e\n\n\n\u003c!-- TechStack --\u003e\n### :space_invader: Technologies Used\n\n\u003cdetails\u003e\n  \u003csummary\u003eBackend\u003c/summary\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"https://www.java.com/en/\"\u003eJava\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"https://spring.io/projects/spring-boot\"\u003eSpring Boot\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"https://hibernate.org/\"\u003eHibernate\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"https://spring.io/guides/gs/scheduling-tasks\"\u003eSpring Scheduler \u003c/a\u003e\u003c/li\u003e\n  \u003c/ul\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eFrontend\u003c/summary\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"https://www.thymeleaf.org/\"\u003eThymeleaf\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"https://html.com/\"\u003eHTML\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"https://www.w3.org/Style/CSS/Overview.en.html\"\u003eCSS\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"https://www.javascript.com/\"\u003eJavaScript\u003c/a\u003e\u003c/li\u003e\n  \n  \u003c/ul\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eDatabase\u003c/summary\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"https://www.mysql.com/\"\u003eMySQL\u003c/a\u003e\u003c/li\u003e\n  \u003c/ul\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eAPI Integration\u003c/summary\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"https://home.openweathermap.org/\"\u003eOpenWeatherMap API for weather data\u003c/a\u003e\u003c/li\u003e\n  \u003c/ul\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eDeployment\u003c/summary\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"https://aws.amazon.com/ec2/\"\u003eAWS EC2\u003c/a\u003e\u003c/li\u003e\n  \u003c/ul\u003e\n\u003c/details\u003e\n\n\u003c!-- Features --\u003e\n### :dart: **Features**\n\n- **Real-Time Weather Data**: Fetch current weather data every 5 minutes for major metro cities in India.\n  \n- **Temperature Alerts**: Set personalized alerts for temperature thresholds (above/below) and receive email notifications.\n  \n- **Daily Weather Aggregation**: Store and analyze daily weather data, including average, maximum, and minimum temperatures.\n  \n- **Historical Data Tracking**: View historical weather data for specific cities with detailed reports.\n  \n- **User-Friendly Interface**: A very user-friendly web application interface for easy navigation and data visualization.\n\n \u003c!-- Env Variables --\u003e\n### :key: Environment Variables\n\nTo run this project, you will need to add the following environment variables to your .env file or application.properties\n\n`api_key`\n\n`db_url`\n\n`db_username`\n\n`db_password`\n\n`mail_port`\n\n`mail_username`\n\n`mail_password`\n\n\u003c!-- Getting Started --\u003e\n## \t:toolbox: Getting Started\n\n\u003c!-- Prerequisites --\u003e\n### :bangbang: Prerequisites\n\n- Java 17\n- Spring Boot 3.2.5\n- MySQL\n- Maven\n\n\u003c!-- Installation --\u003e\n### :gear: Installation\n\n1. **Clone the repository**:\n\n   ```bash\n   git clone https://github.com/Vineet1025/Weather-App.git\n   cd Weather-App\n   ```\n2. **Configure your application.properties for openweathermap api, database connection and notification alert**:\n    ```bash\n    api.key=${api_key} //Enter your openweathermap api key here\n    \n    //DB connection\n    spring.datasource.url=${db_url} //Enter your database url (jdbc:mysql://localhost:3306/weather_app_db)\n    spring.datasource.username=${db_username}  //Enter your database username\n    spring.datasource.password=${db_password}  //Enter your database passward\n    \n    //Mail connection\n    spring.mail.port=${mail_port}  //Enter your mail port (587)\n    spring.mail.username=${mail_username}  //Enter your Email\n    spring.mail.password=${mail_password}  //Enter your passkey\n    ```\n3. **Run the application**:\n   ```bash\n   mvn spring-boot:run\n    ```\n4. **Access the application in your browser at** http://localhost:8080/home\n\n### :triangular_flag_on_post: Deployment\n\nThe application has been successfully deployed on an AWS EC2 instance, allowing for easy access and management of real-time weather data globally.\n\n**Accessing the Deployed Application**\n- You can access the live application at: http://13.201.204.129:8000/home\n\n\u003c!-- Usage --\u003e\n## :eyes: Usage\n1. **Set Up Alerts**: Users can create alerts based on temperature thresholds and will receive notifications via email.\n\n2. **View Historical Data**: Navigate to the historical data section to view past weather reports for your selected cities.\n\n3. **Dashboard**: The main dashboard displays the current weather conditions and any active alerts.\n\n\u003c!-- Contributing --\u003e\n## :wave: Contributing\n  \u003cimg src=\"https://contrib.rocks/image?repo=Louis3797/awesome-readme-template\" /\u003e\n\nContributions are welcome! Please feel free to submit issues or pull requests.\n\n\u003c!-- License --\u003e\n## :warning: License\n\nThis project is licensed under the MIT License - see the [LICENSE](https://github.com/Vineet1025/Weather-App/blob/master/LICENSE.md) file for details.\n\n\n\u003c!-- Contact --\u003e\n## :handshake: Contact\n\nVineet Jain - [LinkedIn](https://www.linkedin.com/in/vineet-jain1025/) - jvineet1025@gmail.com\n\nProject Link: [https://github.com/Vineet1025/Weather-App](https://github.com/Vineet1025/Weather-App)\n\n\u003c!-- Acknowledgments --\u003e\n## :gem: Acknowledgements\n\n- OpenWeatherMap API for providing weather data.\n- Spring Boot for an efficient backend framework.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvineet1025%2Fweather-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvineet1025%2Fweather-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvineet1025%2Fweather-app/lists"}