{"id":26364609,"url":"https://github.com/alakra/weather-forecasts","last_synced_at":"2025-03-16T19:22:02.946Z","repository":{"id":15642127,"uuid":"18379208","full_name":"alakra/weather-forecasts","owner":"alakra","description":"Client library for retrieving data from NOAA's weather forecast API","archived":false,"fork":false,"pushed_at":"2021-04-29T21:11:31.000Z","size":213,"stargazers_count":1,"open_issues_count":5,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-15T07:48:55.442Z","etag":null,"topics":["climate","forecast","forecasting","ruby","temperature","weather-forecast"],"latest_commit_sha":null,"homepage":null,"language":"Ruby","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/alakra.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-04-02T19:49:31.000Z","updated_at":"2017-03-07T17:42:49.000Z","dependencies_parsed_at":"2022-08-04T06:00:19.946Z","dependency_job_id":null,"html_url":"https://github.com/alakra/weather-forecasts","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alakra%2Fweather-forecasts","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alakra%2Fweather-forecasts/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alakra%2Fweather-forecasts/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alakra%2Fweather-forecasts/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alakra","download_url":"https://codeload.github.com/alakra/weather-forecasts/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243776866,"owners_count":20346357,"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":["climate","forecast","forecasting","ruby","temperature","weather-forecast"],"created_at":"2025-03-16T19:22:02.307Z","updated_at":"2025-03-16T19:22:02.927Z","avatar_url":"https://github.com/alakra.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Weather Forecasts for Ruby\n\n[![Gem Version](https://badge.fury.io/rb/weather-forecasts.svg)](http://badge.fury.io/rb/weather-forecasts)\n[![Build Status](https://travis-ci.org/alakra/weather-forecasts.svg?branch=master)](https://travis-ci.org/alakra/weather-forecasts)\n[![Dependency Status](https://gemnasium.com/alakra/weather-forecasts.png)](https://gemnasium.com/alakra/weather-forecasts)\n[![Code Climate](https://codeclimate.com/github/alakra/weather-forecasts.png)](https://codeclimate.com/github/alakra/weather-forecasts)\n\n## Summary\n\nThis library provides API client access to NOAA's NDFD database\nfor access to weather forecast information via Ruby.\n\n## NDFD Features\n\nYou can [see the available forecast information](http://www.nws.noaa.gov/ndfd/technical.htm#elements) that is accessible via the API on the NDFD technical description page.\n\nIn general, you can get the following:\n\n  * Specific forecast dimensions (min/max temperature, wind speed, etc.) out to 168 hours.\n  * Climate outlook probabilities (estimated averages/totals of temperature and precipitation)\n  * Convective Outlook Hazard Probabilities (hazard outlook, tornadoes, etc.)\n  * Probabilistic Tropical Cyclone Surface Wind Speed (measured in knots)\n\n## Client Features\n\nThe client offers a easy to use query interface and will hand back data to you in hashes, arrays and XML documents.\nValidates requests and data types on execution of requests (will raise contextual errors on poorly formed data in queries)\n\n## Runtime Dependencies\n\nRuby versions supported:\n\n  * 2.1.x\n  * 2.0.x\n  * 1.9.3\n\nRuby versions not supported (but will be):\n\n  * JRuby 1.7+\n  * Rubinius 2.2+\n\nRuby versions that will not be supported:\n\n  * \u003c= 1.9.2 (including REE)\n\nLibraries used:\n\n  * savon (for SOAP support)\n  * activesupport (for TimeWithZone support)\n  * nokogiri (for XML/XSLT parsing)\n  * httpi (for interfacing with http clients)\n  * http_logger (for controlling logging output from savon)\n\n## Installation\n\n    gem install weather-forecasts\n\n## Usage\n\n`WeatherForecasts.client` is the top-level start point from whence all API calls are executed.\n\nMost calls follow the form of:\n\n    WeatherForecasts.client.\n          select(:maxt, :mint, :temp, etc.).\n          where(conditions).\n          execute\n\nThis will return an `Array` or `Hash` containing the data from the\nresponse depending on the type of the request.\n\n**NOTE**: Dates and times passed to the `where` must be\nActiveSupport::TimeWithZone objects.\n\n**NOTE**: `NDFDgen` and `NDFDgenByDay` are not implemented in favor of\nusing the equivalent collection-based functions.\n\n**NOTE**: `GmlLatLonList`, `GmlTimeSeries` are not implemented because\nof their limited use (and my inability to figure out what parameters\nto use to make a valid request).  It appears to be [discontinued](http://www.nws.noaa.gov/om/notification/tin10-59ending_wfs.htm).\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003cth\u003eQuery Method\u003c/th\u003e\n    \u003cth\u003eAPI server function\u003c/th\u003e\n    \u003cth\u003eDescription\u003c/th\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eselect_hourly\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ccode\u003eDigitalDWML from tabular data feed on [NWS](http://www.weather.gov/)\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eReturns a \u003ccode\u003eHash\u003c/code\u003e of hourly (1-hour) forecast metrics for a single latitude/longitude out to 7 days.\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eselect\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ccode\u003eNDFDgenLatLonList\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eReturns a \u003ccode\u003eHash\u003c/code\u003e of forecast metrics for multiple latitudes/longitudes.\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eselect_by_days\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ccode\u003eNDFDgenByDayLatLonList\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eReturns a \u003ccode\u003eHash\u003c/code\u003e of forecast metrics for multiple latitudes/longitudes in a 24/12 hour period for a number of days.\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eselect_coordinates_by_zip\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ccode\u003eLatLonListZipCode\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eReturns a \u003ccode\u003eHash\u003c/code\u003e of latitudes/longitudes for every zip code requested.\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eselect_coordinates_by_cities\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ccode\u003eLatLonListCityNames\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eReturns a \u003ccode\u003eHash\u003c/code\u003e of latitudes/longitudes for a pre-defined set of cities.\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eselect_square_coordinates\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ccode\u003eLatLonListSquare\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eReturns a \u003ccode\u003eArray\u003c/code\u003e of latitudes/longitudes for the requested rectangular area.\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eselect_gridpoint_coordinates\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ccode\u003eLatLonListSubgrid\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eReturns a \u003ccode\u003eArray\u003c/code\u003e of latitudes/longitudes for the requested subgrid.\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eselect_linepoint_coordinates\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ccode\u003eLatLonListLine\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eReturns a \u003ccode\u003eArray\u003c/code\u003e of latitudes/longitudes between a start and end coordinate.\u003c/td\u003e\n  \u003c/tr\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\u003ccode\u003eselect_corner_coordinates\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003e\u003ccode\u003eCornerPoints\u003c/code\u003e\u003c/td\u003e\n    \u003ctd\u003eReturns a \u003ccode\u003eArray\u003c/code\u003e of latitudes/longitudes of the corners of one of the NDFD grids.\u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\nTo see a description of the NDFD Spatial Reference System (used for collecting lat/longs in an area)\nhttp://graphical.weather.gov/docs/ndfdSRS.htm\n\nTo see more detailed documention, view the [API Documentation](http://rdoc.info/gems/weather-forecasts/frames)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falakra%2Fweather-forecasts","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falakra%2Fweather-forecasts","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falakra%2Fweather-forecasts/lists"}