Skills2026年5月20日·1 分钟阅读

impress.js — Stunning CSS3 Presentation Framework

A presentation framework that leverages CSS3 transforms and transitions to create visually impressive slideshows in the browser, inspired by the idea behind prezi.com.

Agent 就绪

Agent 可直接安装

这个资产可安装;Agent 先选择当前运行时、检查安装计划,再运行匹配命令。

Native · 98/100策略:允许
Agent 入口
任意 MCP/CLI Agent
类型
Skill
安装
Single
信任
信任等级:Established
入口
impress.js Overview
直接安装命令
npx -y tokrepo@latest install b8436d0e-5489-11f1-9bc6-00163e2b0d79 --target codex

先 dry-run 确认安装计划,再运行此命令。

Introduction

impress.js is a presentation framework built on the power of CSS3 transforms and transitions in modern browsers. It breaks free from the linear slide-by-slide model, letting you position content freely in 3D space and animate between views with smooth camera-like movements.

What impress.js Does

  • Positions presentation steps anywhere in 3D space using translate and rotate transforms
  • Animates transitions between steps with smooth CSS3 transitions
  • Supports scaling, rotation, and perspective effects per step
  • Provides a simple HTML data-attribute API for defining step positions
  • Works entirely client-side with no build tools or server required

Architecture Overview

impress.js reads HTML elements marked with a step class inside a root container. Each step declares its position, rotation, and scale via data-* attributes. The engine calculates CSS transform matrices and applies them to a camera wrapper element, creating the illusion of flying through a 3D canvas. The core is a single JavaScript file with no external dependencies.

Self-Hosting & Configuration

  • Clone the repository and serve index.html with any static server
  • Each step element uses data-x, data-y, data-z for positioning
  • Add data-rotate-x, data-rotate-y, data-rotate-z for 3D rotations
  • Use data-scale to zoom in or out on individual steps
  • Customize transitions with CSS overrides on .impress-enabled classes

Key Features

  • Zero dependencies and no build step required
  • Full 3D positioning with perspective and depth
  • Keyboard, mouse, and touch navigation built in
  • Plugin system for extras like autoplay, navigation UI, and speaker notes
  • Small footprint suitable for embedding in any web project

Comparison with Similar Tools

  • reveal.js — Linear slide model with optional 2D grid; impress.js offers true 3D positioning
  • Slidev — Markdown-driven with Vue components; impress.js is pure HTML and CSS
  • Marp — Converts Markdown to PDF slides; impress.js focuses on live browser presentations
  • Prezi — Commercial product with similar 3D canvas; impress.js is fully open source

FAQ

Q: Does impress.js work on mobile devices? A: Yes, modern mobile browsers support the required CSS3 transforms. Touch navigation is built in.

Q: Can I use Markdown for content? A: impress.js uses raw HTML. You can pre-process Markdown to HTML and embed it in step elements.

Q: How do I add speaker notes? A: The speaker-notes plugin reads content from a notes element inside each step and displays it in a separate window.

Q: Is there a WYSIWYG editor? A: Community tools like Strut and Hovercraft provide visual or reStructuredText authoring on top of impress.js.

Sources

讨论

登录后参与讨论。
还没有评论,来写第一条吧。

相关资产