1.5.15 • Published 1 year ago

framer-animations v1.5.15

Weekly downloads
-
License
ISC
Repository
github
Last release
1 year ago

Framer Animations

Simple, programmatic framer-motion animations

Loader/spinner

Fully controlled loader/spinner

Loader in action

import { useLoader } from 'framer-animations'

const { loader, animate } = useLoader()

async function request() {
  animate('load')
  try {
    const r = await fetch()
    // ...
    animate('succeed')
  }
  catch {
    // ...
    animate('fail')
  }
}

return (
  <div>
    // ...
    {loader}
  </div>
)

Slideshow/full-page carousel

Presence-based slideshow

Slideshow in action

import { Slideshow } from 'framer-animations'

const [page, setPage] = useState('home')
const [dir, setDir] = useState('right')

const elem = (() => {
  switch (page) {
    case 'home':
      return (
        <div>
          // ...
          <button onClick={() => { setPage('about'); setDir('right') }}>About</button>
        </div>
      )
    case 'about':
      return (
        <div>
          // ...
          <button onClick={() => { setPage('home'); setDir('left') }}>Back</button>
        </div>
      )
    case '...':
      ...
  }
})()

return (
  <Slideshow pageKey={page} direction={dir}>
    {elem}
  </Slideshow>
)

Carousel

Fully controlled, swipable carousel with animation to skip multiple pages

Carousel in action

import { useCarousel } from 'framer-animations'

const { carousel, goto, selected } = useCarousel({
  numItems: 10, item: idx => <p>Item {idx}</p>
})
// or
const { carousel, goto, selected } = useCarousel({
  mode: 'eager': items: [
    <p>Item 1</p>,
    // ...
    <p>Item N</p>
  ]
})

return (
  <div>
    {carousel}
    <button onClick={() => goto(0)}>Start</button>
    <p>Page: {selected}</p>
    <button onClick={() => goto(9)}>End</button>
  </div>
)

Previewed Carousel

Fully controlled, swipable carousel previewing the previous and next items

Carousel in action

1.5.12

1 year ago

1.5.14

1 year ago

1.5.13

1 year ago

1.5.15

1 year ago

1.5.9

1 year ago

1.5.10

1 year ago

1.5.11

1 year ago

1.5.8

1 year ago

1.5.7

1 year ago

1.5.5

1 year ago

1.5.4

1 year ago

1.5.3

1 year ago

1.5.2

1 year ago

1.5.1

1 year ago

1.5.0

1 year ago

1.4.18

1 year ago

1.4.14

1 year ago

1.4.11

1 year ago

1.4.8

1 year ago

1.4.10

1 year ago

1.4.13

1 year ago

1.4.12

1 year ago

1.4.6

1 year ago

1.4.5

1 year ago

1.4.4

1 year ago

1.4.7

1 year ago

1.4.3

1 year ago

1.4.2

1 year ago

1.4.1

1 year ago

1.3.10

1 year ago

1.3.13

1 year ago

1.3.14

1 year ago

1.3.11

1 year ago

1.3.12

1 year ago

1.3.15

1 year ago

1.3.9

1 year ago

1.3.8

1 year ago

1.2.16

1 year ago

1.2.15

1 year ago

1.3.7

1 year ago

1.3.6

1 year ago

1.3.5

1 year ago

1.3.4

1 year ago

1.3.3

1 year ago

1.3.2

1 year ago

1.3.1

1 year ago

1.3.0

1 year ago

1.2.8

1 year ago

1.2.7

1 year ago

1.2.6

1 year ago

1.2.5

1 year ago

1.2.9

1 year ago

1.2.12

1 year ago

1.2.13

1 year ago

1.2.10

1 year ago

1.2.11

1 year ago

1.2.14

1 year ago

1.2.0

1 year ago

1.1.1

1 year ago

1.1.0

1 year ago

1.2.4

1 year ago

1.2.3

1 year ago

1.1.4

1 year ago

1.2.2

1 year ago

1.1.3

1 year ago

1.2.1

1 year ago

1.1.2

1 year ago

1.0.17

1 year ago

1.0.16

1 year ago

1.0.15

1 year ago

1.0.14

1 year ago

1.0.13

1 year ago

1.0.12

1 year ago

1.0.9

1 year ago

1.0.8

1 year ago

1.0.11

1 year ago

1.0.10

1 year ago

1.0.7

1 year ago

1.0.6

1 year ago

1.0.5

1 year ago

1.0.3

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago