What is the Snap Framework?

Snap is a simple web development framework for unix systems, written in the Haskell programming language.

Snap aims to be the de facto web toolkit for Haskell, on the basis of:

  • High performance
  • High design standards
  • Simplicity and ease of use, even for Haskell beginners
  • Excellent documentation
  • Robustness and high test coverage

Found a bug in Snap? Please visit our issue tracker.

What is the project's status?

Snap launched to the public in May, 2010. The 1.0 milestone was released in Auguest, 2016. The core framework contains:

  • A fast HTTP server library.
  • A sensible and clean monad for web programming.
  • An HTML-based templating system for generating pages that allows you to bind Haskell functionality to tags without getting PHP-style tag soup all over your pants
  • A high-level system called Snaplets for building modular web applications.
  • Built-in snaplets for templating, session management, and authentication.

Snap runs on *nix platforms; it has been tested on Linux and Mac OSX Snow Leopard. Windows support was added more recently, but it is not as well-tested.

Who's involved?

Gregory Collins is a Canadian programmer living in Zurich, Switzerland. He holds an MSc in Computer Science from Yale University and he works at Google.

Doug Beardsley has been programming since 1990, doing web development in Haskell since 2008, and laments that those two dates are so far apart. He currently works as a Senior Engineer at Kadena.

Greg Hale is a biologist turned Haskell developer. He currently lives in Baltimore, MD and works at Takt.

Shu-yu Guo is a PhD student in programming languages and compilers at UCLA. He is also an unaccomplished linguist and a professional StarCraft enthusiast.

James Sanders is a software developer and Haskell enthusiast. He works at Yahoo! in Atlanta, Georgia. In his free time he enjoys music, mathematics and watching Star Trek repeats.

Carl Howells is a veteran of web app development in four different languages in his time at Janrain. He spends his free time trying to become good at video and board games he can't afford to devote the necessary time to.

Shane O'Brien is an undergraduate Computer Science student in Dublin, Ireland. He enjoys music , Haskell, mathematics, free software, freeganism and Lojban.

Ozgun Ataman is a management consultant living in NYC. He holds a long running interest in web technologies, data mining, computational science and modeling. He uses Haskell at work to help companies make sound business decisions.

Chris Smith is a software developer and co-owner of the eLearning company Brindle Waye. He has been developing web applications for about ten years, and free software for about fifteen. He is also an amateur algebraist, doing research in ring theory.

Contacting us