hncr

A Hacker News API wrapper for Crystal

Installation

Add this to your application's shard.yml:

dependencies:
  hncr:
    github: aretrace/hncr
    branch: main

Usage

require "hncr"

# Get ten stories of the 'top' category and print them
HN::Item.new(type: "top", count: 10) do |item|
  puts "#{ item["title"] }, by #{ item["by"] }\n#{ item["url"]? }\n\n"
end

# Get user by id and print the 'about' field
HN::User.new(id: "jl") do |user|
  puts user["about"]
end

API

NOTE:

The API returns items concurrently.

Items constructor:

HN::Item(type, count, &block)

User constructor:

HN::User(id, &block)