@nickiam7/turboflow
v0.1.0
Published
Beautiful page transitions for Turbo applications using the View Transitions API
Maintainers
Readme
@nickiam7/turboflow
Beautiful, smooth page transitions for Turbo applications using the native View Transitions API.
Features
-Smooth Transitions - Hardware-accelerated animations using View Transitions API
-Zero Configuration - Works out of the box with sensible defaults
-Built-in Animations - Fade, slide, zoom, flip, morph and more
-Tiny Size - Under 10KB gzipped with no dependencies
-Accessible - Respects prefers-reduced-motion settings
-Extensible - Easy to add custom animations
Installation
npm install @nickiam7/turboflowOr via CDN:
<script src="https://unpkg.com/@nickiam7/turboflow"></script>Quick Start
1. Add the View Transitions Meta Tag
<head>
<meta name="view-transition" content="same-origin" />
</head>2. Initialize TurboFlow
import TurboFlow from '@nickiam7/turboflow'
// Initialize with defaults
const turboflow = new TurboFlow()
turboflow.init()3. Add Transitions to Your HTML
<!-- Links -->
<a href="/page" data-turbo-flow="slide">Slide to page</a>
<!-- Forms -->
<form data-turbo-flow="zoom">
<!-- form content -->
</form>
<!-- Turbo Frames -->
<turbo-frame id="modal" data-turbo-flow="fade">
<!-- frame content -->
</turbo-frame>Available Transitions
- fade - Smooth opacity transition (default)
- slide - Horizontal slide (direction-aware)
- slideUp - Slide up from bottom
- slideDown - Slide down from top
- zoom - Scale in/out
- flip - 3D flip effect
- morph - Seamlessly morph elements with matching IDs
Configuration
const turboflow = new TurboFlow({
defaultTransition: 'fade',
duration: 300,
easing: 'ease-out',
debug: false
})Browser Support
- ✅ Chrome 111+
- ✅ Edge 111+
- ⚠️ Safari (graceful fallback)
- ⚠️ Firefox (graceful fallback)
Links
License
MIT © Nick McNeany
