We believe zoomable touch user interfaces to be the best way for humans to explore and manipulate two-dimensional content. Therefore we built Tapspace.js, a JavaScript library dedicated for building such dynamic front-ends. It implements a scene graph that provides an infinite, scalable, and rotatable space for you to represent HTML content and for your users to play with. Tapspace uses pure CSS3 and DOM instead of Canvas or WebGL and therefore is able to handle any HTML content you throw at it, including iframes and SVG, and also Canvas- and WebGL-rendered elements. And of course, we provide a clean, documented API for you to build your best.
Examples for you to play around.
Tutorial is a good place to start for newcomers.
API Reference comes handy when coding.
Developer’s Cheat Sheet for hard-core folks who want to take Tapspace to a next level.
GitHub for the source code and bug reports.
NPM for the stable release and popularity statistics.
$ npm install tapspace@alpha
$ yarn add tapspace@alpha
Whether you dream about a vast data visualization, a deep map-like home page, or a big online game, these example apps give you a major head start in building your zoomable user interface and touch integration. To get the most out of the example apps, use a touch device. See the source code for tutoring comments! See also examples for Tapspace v2.0.0-alpha that are going to be merged here at some point.
See also early Tapspace.js v2 examples.
Members of LINCS team at Texas A+M University and University of Guelph, 2023.
Fellows of Infant Cognition Laboratory at Tampere University, 2016.
Members of the Tapspace v0 code inspection group on 2013-Nov-18