Skip to content

Complete Weather Dashboard functionality and improve responsiveness - #314

Merged
komalharshita merged 4 commits into
komalharshita:mainfrom
Smrithi-krishna:feat/weather-dashboard-enhancements
May 19, 2026
Merged

Complete Weather Dashboard functionality and improve responsiveness#314
komalharshita merged 4 commits into
komalharshita:mainfrom
Smrithi-krishna:feat/weather-dashboard-enhancements

Conversation

@Smrithi-krishna

Copy link
Copy Markdown
Contributor

Summary [required]

This PR completes the Weather Dashboard by implementing full OpenWeatherMap API integration, dynamic weather rendering, unit conversion (Celsius/Fahrenheit), wind direction logic, error handling, and improving responsiveness for mobile devices. It turns the starter template into a fully functional weather application.

Related Issue [required]

Closes #172

Type of Change [required]

  • Bug fix — resolves a broken behaviour
  • Feature — adds new functionality
  • Data — adds new projects to data/projects.json
  • Documentation — updates docs, README, or code comments only
  • Style — CSS or visual changes only, no logic change
  • Refactor — restructures code without changing behaviour
  • Test — adds or updates tests

What Was Changed [required]

File Change made
weather_dashboard.html Added full API integration, weather display, unit toggle, wind logic, error handling & responsive UI improvements

How to Test This PR [required]

  1. Clone this branch: git checkout your-branch-name
  2. Install dependencies: pip install -r requirements.txt
  3. Run the app: python app.py
  4. Open http://127.0.0.1:5000 and...
  5. Run the tests: python tests/test_basic.py

Expected test output:

27 passed, 0 failed out of 27 tests

Test Results [required]

PASS  test_projects_json_loads
  PASS  test_each_project_has_required_fields
  PASS  test_find_project_by_id_found
  PASS  test_find_project_by_id_missing
  PASS  test_parse_skills_basic
  PASS  test_parse_skills_empty_string
  PASS  test_parse_skills_single_entry
  PASS  test_score_single_project_full_match
  PASS  test_score_single_project_no_match
  PASS  test_get_recommendations_returns_results
  PASS  test_get_recommendations_max_three
  PASS  test_get_recommendations_no_match_returns_empty
  PASS  test_get_recommendations_result_format
  PASS  test_validate_all_valid
  PASS  test_validate_missing_skills
  PASS  test_validate_missing_level
  PASS  test_validate_missing_interest
  PASS  test_validate_missing_time
  PASS  test_validate_all_missing
  PASS  test_home_route
  PASS  test_recommend_api_valid
  PASS  test_recommend_api_missing_field
  PASS  test_recommend_api_empty_body
  PASS  test_project_detail_found
  PASS  test_project_detail_not_found
  PASS  test_internal_server_error_page
  PASS  test_view_code_found
  PASS  test_download_code_found
  PASS  test_health_check
  PASS  test_scoring_weights_has_all_keys

30 passed, 0 failed out of 30 tests

Screenshots (if UI change)

Before
screenshot
Screenshot 2026-05-19 105917 | After | |--------| Screenshot 2026-05-19 110411 Screenshot 2026-05-19 105459
Screen.Recording.2026-05-19.111538.mp4

Self-Review Checklist [required]

  • I have read CONTRIBUTING.md and followed all guidelines
  • My branch name follows the convention: feat/, fix/, docs/, data/, style/, test/
  • I have run python tests/test_basic.py and all 27 tests pass
  • I have run flake8 . locally and there are no errors
  • I have not introduced any print() or console.log() debug statements
  • Every new function I wrote has a docstring
  • I have not modified files outside the scope of the linked issue
  • If I changed the UI, I tested it at 375px (mobile) and 1280px (desktop)
  • If I added a project to the dataset, it has all required JSON fields

Notes for Reviewer

This PR focuses on completing the core functionality of the Weather Dashboard and improving user experience. No external dependencies were added. All features were implemented within the existing structure.

@vercel

vercel Bot commented May 19, 2026

Copy link
Copy Markdown

@Smrithi-krishna is attempting to deploy a commit to the komalsony234-1530's projects Team on Vercel.

A member of the Team first needs to authorize it.

@komalharshita komalharshita left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the updates. The additional screenshots, screen recording, testing details, and clearer PR description help clarify the implementation significantly.

The Weather Dashboard now appears to include:

  • proper OpenWeatherMap API integration
  • dynamic weather rendering
  • Celsius/Fahrenheit conversion
  • wind direction handling
  • error handling
  • responsive improvements

The feature scope is now much clearer and aligns well with the linked issue. The added UI evidence and completed testing checklist also improve review confidence.

Minor future considerations would be continued validation of edge cases like invalid city searches, API failures, and small-screen overflow handling, but overall the implementation now looks solid and merge-ready.

Approved for merge.

@komalharshita
komalharshita merged commit 8fa984b into komalharshita:main May 19, 2026
8 of 9 checks passed
@Smrithi-krishna
Smrithi-krishna deleted the feat/weather-dashboard-enhancements branch June 26, 2026 17:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Feature Request: Complete Weather Dashboard Functionality & UI Enhancements

2 participants