calibre is an e-book manager. It can view, convert and catalog e-books in all of the major e-book formats. It can also talk to e-book reader devices. It can go out to the internet and fetch metadata for your books. It can download newspapers and convert them into e-books for convenient reading. It is cross platform, running on Linux, Windows and OS X.
For more information, see the calibre About page
See the User Manual
Setting up a development environment for calibre
A tarball of the source code for the current calibre release.