About Hackage

Hackage is a collection of released Haskell packages. Each package is in the Cabal format, a standard way of packaging Haskell source code that makes it easy to build and install. (Hackage and Cabal are components of a broader Haskell infrastructure effort called Hackage.) These pages are a basic web interface to the Hackage package database.

This isn't the official Hackage. It's an in-progress rewrite of the server using the happstack web framework.

Finding packages

The Packages link above lists the available packages and provides a full text search of the package pages (via Google), while What's new lists recent additions (also available as an RSS feed). You can also do a simple text search of package descriptions:

There are a few other package indices:

See How to install a Cabal package for instructions on installing the packages you find here.

Releasing packages through Hackage

To upload your own releases, you'll first need to package them as Cabal source packages. See How to create a Haskell package for a tutorial. You can check and upload your package using the Upload link above, though you'll need a Hackage username and password.

Getting the raw data

Development

See the Hackage wiki page. There is also a document in progress summarizing the architecture of the new hackage-server. Check out the code yourself:

darcs get http://code.haskell.org/hackage-server

We'd like to make it as simple as possible for anyone to set up a Hackage server.