Multi-touch hardware has only recently entered the mainstream of information technology. Interaction designers, product developers and users have been influenced by this development. In order to build multi- touch applications, programmers have created various reusable frameworks. To obtain an overview of this diversity, we present a list of criteria to classify, evaluate, and select multi-touch frameworks. Our main contribution consists in a taxonomy that we have elaborated out of a vast list of existing projects, of which we present nine freely available ones here. To promote the development of multi-touch frameworks, our list of criteria reveals four main areas for future work.