gitmyhub

choreo.js

JavaScript ★ 8 updated 13y ago

Event-based flow control for interactive walkthroughs

Choreo.js is a lightweight tool for building interactive step-by-step walkthroughs—think of it as a guide that takes people through a sequence of screens or actions, but with much more control than a typical presentation tool.

Imagine you're building an interactive demo or tutorial on the web. You want users to move forward and backward through different "scenes," and you want those movements to trigger specific actions in your content—maybe revealing new elements, playing animations, or updating the page. Most presentation frameworks force you to use their built-in structure and styling, which gets in the way. Choreo.js takes the opposite approach: it's a lightweight conductor that manages the flow (scenes and steps) and lets you decide what actually happens when someone moves between them through event listeners. You write the code that decides what to do at each step.

The library works by organizing your walkthrough into scenes and steps that users can navigate forward and backward through. Instead of hard-coding what happens at each transition, you use an event-based system—basically, you tell Choreo "when the user moves to step 3, run this code" or "when they go back, do that instead." This means Choreo stays out of your way and works with whatever HTML, CSS, or JavaScript you've already built.

Who would use this? Developers building interactive tutorials, onboarding flows, product demos, or educational content where you need precise control over timing and what happens at each step. Unlike slide-based tools, it's designed for scenarios where the content is complex or heavily interactive—not just static text and images. The README mentions the core is "totally abstract," meaning the framework itself doesn't assume anything about your content structure, giving you complete freedom in how you implement each scene.