Shepherd is a JavaScript library for guiding
users through your app. It uses Tether, another open source library, to render dialogs for each tour "step".
Among many things, Tether makes sure your steps never end up off screen or cropped by an overflow.