├── .github
└── FUNDING.yml
├── .gitignore
├── .npmignore
├── LICENSE
├── README.md
├── bin
├── generate.ts
└── release.js
├── dist
├── index.d.ts
├── vue-animate.cjs
├── vue-animate.cjs.map
├── vue-animate.css
├── vue-animate.css.map
├── vue-animate.es.js
├── vue-animate.es.js.map
├── vue-animate.es.min.js
├── vue-animate.es.min.js.map
├── vue-animate.min.css
├── vue-animate.min.css.map
├── vue-animate.umd.js
├── vue-animate.umd.js.map
├── vue-animate.umd.min.js
└── vue-animate.umd.min.js.map
├── docs
├── CNAME
├── assets
│ ├── index-05dc69e1.css
│ ├── index-cbc3acf7.js
│ └── vue-5532db34.svg
├── index.html
└── vite.svg
├── index.html
├── package.json
├── public
├── CNAME
└── vite.svg
├── rollup.config.mjs
├── src
├── animates
│ ├── animate.css
│ ├── back
│ │ ├── backDown.css
│ │ ├── backLeft.css
│ │ ├── backRight.css
│ │ └── backUp.css
│ ├── bounce
│ │ ├── bounce.css
│ │ ├── bounceDown.css
│ │ ├── bounceLeft.css
│ │ ├── bounceRight.css
│ │ └── bounceUp.css
│ ├── fade
│ │ ├── fade.css
│ │ ├── fadeBottomLeft.css
│ │ ├── fadeBottomRight.css
│ │ ├── fadeDown.css
│ │ ├── fadeDownBig.css
│ │ ├── fadeLeft.css
│ │ ├── fadeLeftBig.css
│ │ ├── fadeRight.css
│ │ ├── fadeRightBig.css
│ │ ├── fadeTopLeft.css
│ │ ├── fadeTopRight.css
│ │ ├── fadeUp.css
│ │ └── fadeUpBig.css
│ ├── flip
│ │ ├── flip.css
│ │ ├── flipX.css
│ │ └── flipY.css
│ ├── lightSpeed
│ │ ├── lightSpeedLeft.css
│ │ └── lightSpeedRight.css
│ ├── main.css
│ ├── roll
│ │ └── roll.css
│ ├── rotate
│ │ ├── rotate.css
│ │ ├── rotateDownLeft.css
│ │ ├── rotateDownRight.css
│ │ ├── rotateUpLeft.css
│ │ └── rotateUpRight.css
│ ├── slide
│ │ ├── slideDown.css
│ │ ├── slideLeft.css
│ │ ├── slideRight.css
│ │ └── slideUp.css
│ └── zoom
│ │ ├── zoom.css
│ │ ├── zoomDown.css
│ │ ├── zoomLeft.css
│ │ ├── zoomRight.css
│ │ └── zoomUp.css
├── animations-list.json
├── attention.ts
├── attentions-list.json
├── attentions
│ ├── bounce.ts
│ ├── flash.ts
│ ├── headShake.ts
│ ├── heartBeat.ts
│ ├── index.ts
│ ├── jello.ts
│ ├── pulse.ts
│ ├── rubberBand.ts
│ ├── shake.ts
│ ├── shakeX.ts
│ ├── shakeY.ts
│ ├── swing.ts
│ ├── tada.ts
│ └── wobble.ts
├── docs
│ ├── App.vue
│ ├── assets
│ │ └── vue.svg
│ ├── main.ts
│ ├── style.css
│ └── vite-env.d.ts
└── index.ts
├── tsconfig.json
├── tsconfig.lib.json
├── tsconfig.node.json
├── vite.config.ts
└── yarn.lock
/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | # These are supported funding model platforms
2 |
3 | github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
4 | patreon: asika32764
5 | open_collective: # Replace with a single Open Collective username
6 | ko_fi: # Replace with a single Ko-fi username
7 | tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
9 | liberapay: # Replace with a single Liberapay username
10 | issuehunt: # Replace with a single IssueHunt username
11 | lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
12 | polar: # Replace with a single Polar username
13 | buy_me_a_coffee: asika32764
14 | thanks_dev: # Replace with a single thanks.dev username
15 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
16 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | pnpm-debug.log*
8 | lerna-debug.log*
9 |
10 | node_modules
11 | dist-ssr
12 | *.local
13 |
14 | # Editor directories and files
15 | .vscode/*
16 | !.vscode/extensions.json
17 | .idea
18 | .DS_Store
19 | *.suo
20 | *.ntvs*
21 | *.njsproj
22 | *.sln
23 | *.sw?
24 |
--------------------------------------------------------------------------------
/.npmignore:
--------------------------------------------------------------------------------
1 | .*
2 | *.log
3 | *.swp
4 | *.yml
5 | bower.json
6 | coverage
7 | config
8 | public
9 | bin
10 | docs
11 | README.md
12 | index.html
13 | LICENSE
14 | rollup.config.mjs
15 | tsconfig.json
16 | tsconfig.lib.json
17 | tsconfig.node.json
18 | vite.config.ts
19 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2017 Simon Asika
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy of
6 | this software and associated documentation files (the "Software"), to deal in
7 | the Software without restriction, including without limitation the rights to
8 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
9 | the Software, and to permit persons to whom the Software is furnished to do so,
10 | subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
17 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
18 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
19 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
20 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
21 |
22 | -----
23 |
24 | The Animate.css license.
25 |
26 | This library is port of animate.css (https://github.com/animate-css/animate.css) for use with Vue.js transitions.
27 | The animate.css license please see: https://github.com/animate-css/animate.css/blob/main/LICENSE
28 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # vue-animate
2 |
3 | [](https://www.npmjs.com/package/@asika32764/vue-animate)
4 | [](LICENSE)
5 |
6 | Cross-browser CSS3 animation library, a port of animate.css for use with Vue.js transitions. [DEMO](https://vue-animate.simular.co/)
7 |
8 | Support for:
9 |
10 | - Vue 2.x
11 | - Vue 3.x
12 | - Alpine.js
13 |
14 | ## Credit
15 |
16 | - [@haydenbbickerton](https://github.com/haydenbbickerton/vue-animate) is the original [vue-animate (LESS)](https://github.com/haydenbbickerton/vue-animate) author (Only for Vue 1.x).
17 | - [@pavels-hyuna](https://github.com/pavels-hyuna) is v2 SCSS version author.
18 |
19 | ## Table of Contents
20 |
21 |
22 | * [vue-animate](#vue-animate)
23 | * [Credit](#credit)
24 | * [Table of Contents](#table-of-contents)
25 | * [Installation](#installation)
26 | * [Transitions](#transitions)
27 | * [Custom Transition Classes](#custom-transition-classes)
28 | * [Custom Animation Properties](#custom-animation-properties)
29 | * [Slide as Mobile](#slide-as-mobile)
30 | * [Work with Alpine.js](#work-with-alpinejs)
31 | * [Attentions Seekers](#attentions-seekers)
32 | * [Options](#options)
33 | * [Contribution Guide](#contribution-guide)
34 | * [Build Lib](#build-lib)
35 | * [Build Docs](#build-docs)
36 | * [Sync from animate.css](#sync-from-animatecss)
37 |
38 |
39 | ## Installation
40 |
41 | From NPM
42 |
43 | ```shell
44 | npm i @asika32764/vue-animate --save
45 |
46 | yarn add @asika32764/vue-animate
47 | ```
48 |
49 | CDN
50 |
51 | ```html
52 |
53 | ```
54 |
55 | ## Import
56 |
57 | Import animations for JS Bundler.
58 |
59 | ```ts
60 | import '@asika32764/vue-animate/dist/vue-animate.css';
61 | ```
62 |
63 | Import in CSS or SCSS file.
64 |
65 | ```css
66 | @import "@asika32764/vue-animate/dist/vue-animate.css";
67 |
68 | /* If you want to override CSS variables, write it just after importing */
69 | :root {
70 | --animate-duration: .3s;
71 | --animate-delay: 0;
72 | }
73 | ```
74 |
75 | ## Transitions
76 |
77 | Use [Vue.js transitions](https://vuejs.org/guide/built-ins/transition.html "Vue.js Transitions") as you normally would, but for the transition name you will use one of [Animate.css animations](https://animate.style/#utilities "animations") **removing** the `animate__` and `in/Out` from the name.
78 |
79 | For example, if you want to use `animate__animated animate__fadeInLeft` and `animate__fadeInLeft` on your element, You could write:
80 |
81 | ```html
82 | hello hello hello
A Vue.js port of Animate.css. For use with Vue's built-in transitions
A Vue.js port of Animate.css. For use with Vue's built-in transitions
99 |<TransitionGroup name="{{ effect }}" tag="div" class="list-group">
149 | <li v-for="item of items" class="list-group-item" :key="item">
150 | {{ item }}
151 | </li>
152 | </TransitionGroup>
153 | Click a button to demo the animations.
189 |{{ attentionsSampleCode }}
220 |