implementing github API