exhn
Streaming Hacker News API client
Install
In your mix.exs:
def application do
[applications: [:exhn]]
end
defp deps do
[
{:exhn, "~> 1.1.4"}
]
end
Then run mix deps.get.
Usage
For information about the endpoints themselves please refer to the Hacker News API docs.
Static endpoints
Static endpoints are available under ExHN.
ExHN.item(id)
Gets the item with the specified id.
ExHN.items(enum)
Returns a Stream of items from a given enum of id numbers. This can be a List or a Range.
ExHN.user(name)
Gets the item with the specified name.
Live endpoints
Live endpoints are available under ExHN.Live. These return an infinite Stream of data. The following endpoints are available:
ExHN.max_itemExHN.updatesExHN.new_storiesExHN.top_storiesExHN.best_storiesExHN.ask_storiesExHN.show_storiesExHN.job_stories
ExHN.Live.get_items(stream)
A helper function that gets the actual data inside the above endpoints since they return a list of ids:
iex> ExHN.Live.updates |> ExHN.Live.get_items |> Enum.take(1)
iex> [%{"by" => "username", "text" => "I'm a comment!"}]License
MIT © Juan Soto