Use the buttons above to select an animation style. Then press the link in the demo web site below to see that animation in action. Use check checkbox to see how the clipped animation looks like. How do you do that?
Our Team

Stay tuned for more updates about our team and services. If you have any questions, feel free to click here.
Welcome back to our website! Let’s introduce you to our dedicated team.
John Doe
John is our lead web developer. He has over 10 years of experience in the field and specializes in JavaScript and Python.
Jane is our app development expert. She has a knack for designing user-friendly interfaces and has a deep understanding of Swift and Kotlin.
Mary Johnson
Mary heads our digital marketing team. She has a proven track record of successful SEO and social media campaigns.
How were these animations crafted?
All animations are made with Zoom, Swing and
Move from the astro-vtbot
package. In the code examples below you can see how they are parametrized.
By the way: The animation of the button grid at the top of this page was created by simply
adding swing()
to transition:animate
.
---import { swing } from "astro-vtbot/animations/swing";---<div transition:animate={swing()}> ...</div>
Here are the codes for the other examples:
Zoom
---import { zoom } from "astro-vtbot/animations/zoom";---<div transition:animate={zoom({ duration: '0.3s' })}> ...</div>
---import { customZoom } from "astro-vtbot/animations/zoom";import AnimationStyle from "astro-vtbot/animations/AnimationStyle.astro";
const zoom2Scope = customZoom('zoom2', { keyframes: { scale: { forwardOut: 0, backwardIn: 0 } },});---<AnimationStyle name="zoom2"><div data-astro-transition-scope={zoom2Scope}> ...</div>
---import { customZoom } from "astro-vtbot/animations/zoom";import AnimationStyle from "astro-vtbot/animations/AnimationStyle.astro";
const zoom3Scope = customZoom('zoom3', { keyframes: { scale: { forwardOut: 0, backwardIn: 0 } }, base: { duration: '0.3s', easing: 'cubic-bezier(.16,.73,.05,1.52)' }, extensions: { forwards: { new: { 'animation-delay': '0.2s' } }, backwards: { new: { 'animation-delay': '0.2s' } }, },});---<AnimationStyle name="zoom3"><div data-astro-transition-scope={zoom3Scope}> ...</div>
Swing
---import { customSwing } from "astro-vtbot/animations/swing";import AnimationStyle from "astro-vtbot/animations/AnimationStyle.astro";
const swing1Scope = customSwing('swing1', { keyframes: { axis: { y: 1 }, angle: { leave: '90deg', enter: '-90deg' } }, base: { duration: '300ms' }, extensions: { forwards: { old: { 'transform-origin': 'center left' }, new: { 'transform-origin': 'center right', 'animation-delay': '0.075s' }, }, backwards: { old: { 'transform-origin': 'center right' }, new: { 'transform-origin': 'center left', 'animation-delay': '0.075s' }, }, },});---<AnimationStyle name="swing1"><div data-astro-transition-scope={swing1Scope}> ...</div>
---import { customSwing } from "astro-vtbot/animations/swing";import AnimationStyle from "astro-vtbot/animations/AnimationStyle.astro";
const swing2Scope = customSwing('swing2', { keyframes: { axis: { z: 1 }, angle: { leave: '180deg', enter: '-180deg' }, }, base: { duration: '0.3s' }, extensions: { forwards: { new: { 'animation-delay': '0.15s' } }, backwards: { new: { 'animation-delay': '0.15s' } }, },});---<AnimationStyle name="swing2"><div data-astro-transition-scope={swing2Scope}> ...</div>
---import { customSwing } from "astro-vtbot/animations/swing";import AnimationStyle from "astro-vtbot/animations/AnimationStyle.astro";
const swing3Scope = customSwing('swing3', { keyframes: { axis: { x: 1 } }, base: { duration: '0.3s' }, extensions: { forwards: { old: { 'transform-origin': 'top center' }, new: { 'transform-origin': 'top center', 'animation-delay': '0.1s' }, }, backwards: { old: { 'transform-origin': 'top center' }, new: { 'transform-origin': 'top center', 'animation-delay': '0.1s' }, }, },});---<AnimationStyle name="swing3"><div data-astro-transition-scope={swing3Scope}> ...</div>
Move
---import { move } from "astro-vtbot/animations/move";---<div transition:animate={move()}> ...</div>
---import { customMove } from "astro-vtbot/animations/move";import AnimationStyle from "astro-vtbot/animations/AnimationStyle.astro";
const move2Scope = customMove('move2', { keyframes: { enter: { x: '100vw'}, leave: { x: '-100vw'}, }, base: { duration: '0.5s', easing: 'linear' },});---<AnimationStyle name="move2"><div data-astro-transition-scope={move2Scope}> ...</div>
---import { customMove } from "astro-vtbot/animations/move";import AnimationStyle from "astro-vtbot/animations/AnimationStyle.astro";
const move3Scope = customMove('move3', { keyframes: { enter: { y: '-50cm', z: '-50cm' }, enterMid: { y: '10cm', z: '-25cm', angel: '10deg' }, leaveMid: { y: '-10cm', z: '-25cm', angel: '-10deg' }, leave: { y: '50cm', z: '50cm' }, axis: { x: 1, y: 1, z: 1 } }});---<AnimationStyle name="move3"><div data-astro-transition-scope={move3Scope}> ...</div>