A TypeScript library for creating realistic page-flip animations in the browser.
# Vanilla JavaScript
npm install html-flip-book-vanilla
# React
npm install html-flip-book-react- RTL & LTR Support — Horizontal flip direction for both reading directions
- Touch & Mouse Input — Drag pages with touch gestures or mouse
- Velocity-based Flipping — Fast swipes complete the flip automatically
- Progress-based Flipping — Partial drags complete based on progress threshold
- Concurrent Flip Animations — Multiple pages can flip simultaneously
- Hover Effects — Subtle inner-shadow preview on page edges
- Leaves Buffer — Performance optimization for large books (only render nearby pages)
- Toolbar Components — Pre-built navigation UI:
Toolbar— Container componentPrevButton/NextButton— Navigate pagesFirstPageButton/LastPageButton— Jump to endsPageIndicator— Current page displayFullscreenButton— Toggle fullscreen mode
- Imperative API —
flipNext(),flipPrev(),flipToPage(),jumpToPage() - Ref Handle — Access current page index, total pages, navigation state
- Live Demo — English (LTR) and Hebrew (RTL) books
- Curl animation / animated page edges
- Vertical flip direction
- Vue component
- Angular component