Presentations sometimes feel like the bane of the business community. They are notoriously difficult to prepare, and delivering a presentation to a packed room is a challenge in itself. Even after you've got the content down, there remains the matter of actually creating something you can show other people while you talk. Impress.JS is a free JavaScript library that skilled web developers can use to create presentations that run in a browser and look nothing like PowerPoint. Instead of moving through slides, you fly over a large map of concepts, zooming and shifting between them.

Traditionally, a presentation is a deck of slides, some of which may be animated, with text sliding in and spinning around. This sort of animation is easy to overdo, and it doesn't change the fact that once you're done talking about a slide, there's an abrupt switch to the next slide. Impress.js breaks the slide deck metaphor and turns the presentation into an infinite canvas. Instead of flipping between slides, your presentation zooms in on a concept, then glides to the next one, then rotates 90 degrees and zooms back out to reveal a new concept, then tilts on its side (3D!) to show the next idea, and so on. It's like you're taking the viewers on a guided tour through an infinite space strewn with ideas. You get to control the transitions, and you don't have to use 3D if you feel it's too flashy.

The "big poster" format is not a completely new invention: Commercial service Prezi bills itself "The Zooming Presentation Editor," and lets users create presentations that look similar to this, without having to code anything. But Prezi is a hosted solution, and it is Flash-based. If you don't like those two restrictions--and you're skilled with HTML, CSS, and JavaScript--Impress.js can help you create some truly fantastic presentations.

Impress.js is not a software program. It is a tiny bundle of six files, the most important of which are impress.js (the actual script), impress-demo.css (a CSS file containing formatting for the presentation), and index.html. That last one is a working presentation created with Impress.js, and it serves two purposes: Viewed in a web browser, it lets you see all the crazy things Impress.js can do. Viewed in a code editor, it shows you exactly how those things are done, using numerous code comments and one ASCII drawing of Yoda.

Even more than a presentation tool, Impress.js serves as a showcase for how far browsers have come: It uses CSS 3D transforms, custom data elements (something HTML 5 makes possible), and other cutting-edge browser capabilities. Recent Chrome and Firefox versions support these features, but Internet Explorer and Opera do not. Impress.js was never meant to work equally well across all browsers and computers: Creator Bartek Szopka recommends using Impress.js as a presentation tool and not a tool for creating and publishing websites, because, in his words, "When you are building a presentation for yourself you know exactly on which browser, OS, and hardware it will be presented. You can fully test it before going on stage."

Still, there are websites based on Impress.js, such as lioshi.com (an art portfolio in French), and the website for Electric Animal, an "Internet invention agency." When these websites are viewed with an unsupported browser, they gracefully fall back to a static mode and you can scroll through the presentation top-to-bottom. Impress.js was also used in a video by Museum140, a website for social media projects about museums.

OUR VERDICT

Impress.js is aimed at a narrow niche, but if you've got what it takes (or can hire a developer who does), it can be used to create truly memorable, unique presentations.