Popularity
1.7
Growing
Activity
0.0
Stable
17
4
1

Programming language: Go
License: MIT License
Tags: Third-party APIs    
Latest version: v1.2

go-hacknews alternatives and similar packages

Based on the "Third-party APIs" category.
Alternatively, view go-hacknews alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of go-hacknews or a related project?

Add another 'Third-party APIs' Package

README

go-hacknews

Open Source Love Awesome Travis Go Report Card MIT Licence

Tiny utility Go client for HackerNews API.

Official Hackernews API

Install

 go get github.com/PaulRosset/go-hacknews

Usage

Few examples are available inside the examples/ folder.

package main

import (
        "fmt"
        "github.com/PaulRosset/go-hacknews"
)

func main() {

    // Init struct with the kind of story you want
    // (topstories/newstories/beststories/askstories/showstories/jobstories)
    // and the number of posts that you want to fetch.
    init := hacknews.Initializer{"topstories", 10}

    // Get the code of posts.
    // Return a slice of int with the entry id if everything is ok or return an error.
    codes, err := init.GetCodesStory()
    if err != nil {
        fmt.Println(err)
        return
    }

    // Get the posts thanks their id fetched above.
    // Return a slice of Post type with a readable format in go or return an err if fail.
    posts, err := init.GetPostStory(codes)
    if err != nil {
        fmt.Println(err)
        return
    }

    // Iterate over the slice to get what we want.
    // Here, get Title and Url of post. But we can access all fields from the official hackernews api
    // Note : Field are empty, if no data belong to them
    for _, post := range posts {
        fmt.Printf("Title : %v // Url : %v\n", post.Title ,post.Url)
    }

}



Test

Tests are available :

$ go test

License

MIT


*Note that all licence references and agreements mentioned in the go-hacknews README section above are relevant to that project's source code only.