forecastr v0.1.1 Forecastr

Forecastr is an application that queries the Open Weather Map API

The Forecastr user API is exposed in this way:

Query the OWM API for today’s weather

Forecastr.forecast(:today, query, params \ %{}, renderer \ Forecastr.Renderer.ASCII )

Query the OWM API for the forecast in the next 5 days

Forecastr.forecast(:in_five_days, query, params \ %{}, renderer \ Forecastr.Renderer.HTML )

For example:

Forecastr.forecast(:today, “Berlin”)

Forecastr.forecast(:in_five_days, “Berlin”, %{units: :imperial})

Forecastr.forecast(:in_five_days, “Berlin”, %{units: :imperial}, Forecastr.Renderer.HTML)

Link to this section Summary

Link to this section Types

Link to this type query()
query() :: String.t()
Link to this type response()
response() :: map()
Link to this type when_to_forecast()
when_to_forecast() :: :today | :in_five_days

Link to this section Functions

Link to this function fetch_from_backend(when_to_forecast, query, params)
fetch_from_backend(when_to_forecast(), query(), map()) :: {:ok, response()}
Link to this function fetch_from_cache(when_to_forecast, query)
fetch_from_cache(when_to_forecast(), query()) :: {:ok, :miss} | {:ok, map()}
Link to this function forecast(when_to_forecast, query, params \\ %{units: :metric}, renderer \\ Forecastr.Renderer.ASCII)
forecast(when_to_forecast(), String.t(), map(), atom()) ::
  binary() | {:error, atom()}
Link to this function perform_query(query, when_to_forecast, params)
perform_query(query(), when_to_forecast(), map()) ::
  {:ok, response()} | {:error, atom()}