Skip to content


Subversion checkout URL

You can clone with
Download ZIP
The github API for Haskell
branch: master

Merge pull request #106 from larskuhtz/fix/time-1.5

Fix build for time>=1.5 and base<4.8
latest commit eb707e9816
@jwiegley authored


The Github API v3 for Haskell.

Some functions are missing; these are functions where the Github API did not work as expected. The full Github API is in beta and constantly improving.


In your project's cabal file:

-- Packages needed in order to build this package.
Build-depends:       github

Or from the command line:

cabal install github

Example Usage

See the samples in the samples/ directory.


For details see the reference documentation on Hackage.

Each module lines up with the hierarchy of documentation from the Github API.

Each function has a sample written for it.

All functions produce an IO (Either Error a), where a is the actual thing you want. You must call the function using IO goodness, then dispatch on the possible error message. Here's an example from the samples:

import qualified Github.Users.Followers as Github
import Data.List (intercalate)

main = do
  possibleUsers <- Github.usersFollowing "mike-burns"
  putStrLn $ either (("Error: "++) . show)
                    (intercalate "\n" . map formatUser)

formatUser = Github.githubOwnerLogin


Please see for details on how you can help.


Copyright 2011, 2012 Mike Burns. Copyright 2013-2014 John Wiegley.

Available under the BSD 3-clause license.

Something went wrong with that request. Please try again.