MagicMove

React View Transitions Library

A lightweight library that brings Apple Keynote's Magic Move transitions to the web using the native View Transitions API.

npm install magicmove

Usage

import { MagicMoveProvider, MagicMove, useMagicMove } from 'magicmove';
function App() {
const { trigger } = useMagicMove();
const [expanded, setExpanded] = useState(false);
return (
<MagicMoveProvider>
<MagicMove id="card" className={expanded ? 'large' : 'small'}>
<button onClick={() => trigger(() => setExpanded(!expanded))}>
Toggle
</button>
</MagicMove>
</MagicMoveProvider>
);
}

Examples