{"id":16525891,"url":"https://github.com/thetarnav/vue-wave-skeleton","last_synced_at":"2026-04-13T02:48:23.552Z","repository":{"id":104208020,"uuid":"400636776","full_name":"thetarnav/vue-wave-skeleton","owner":"thetarnav","description":"Cool Wave Skeleton component for loading content in Vue 3. Animated, unique, and chill.","archived":false,"fork":false,"pushed_at":"2021-08-28T18:01:56.000Z","size":146,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-03-02T01:09:12.693Z","etag":null,"topics":["sfc","skeleton","vue","vue3"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/vue-wave-skeleton","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/thetarnav.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-08-27T21:15:25.000Z","updated_at":"2021-08-28T18:26:28.000Z","dependencies_parsed_at":null,"dependency_job_id":"6dc74c71-dd71-44bd-aa1a-96cc32904087","html_url":"https://github.com/thetarnav/vue-wave-skeleton","commit_stats":{"total_commits":7,"total_committers":1,"mean_commits":7.0,"dds":0.0,"last_synced_commit":"027a91e20eaf0c33f2c22e68bf9c5b711609d626"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thetarnav%2Fvue-wave-skeleton","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thetarnav%2Fvue-wave-skeleton/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thetarnav%2Fvue-wave-skeleton/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thetarnav%2Fvue-wave-skeleton/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thetarnav","download_url":"https://codeload.github.com/thetarnav/vue-wave-skeleton/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241605738,"owners_count":19989608,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["sfc","skeleton","vue","vue3"],"created_at":"2024-10-11T17:07:48.899Z","updated_at":"2026-04-13T02:48:18.521Z","avatar_url":"https://github.com/thetarnav.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"﻿# Vue Wave Skeleton\n\nAnimated skeleton component for **Vue 3**, by moving svg wave with constant **chill animation**. A cool way to show that the text content of your page is loading, an alternative to the boring, typical skeletons.\n\n[![wave](https://user-images.githubusercontent.com/24491503/131225504-f97ca108-27c4-47fc-a089-e2e672618218.gif)](https://www.npmjs.com/package/vue-wave-skeleton)\n\n\u003c!-- See the [DEMO](https://vue-hcyeqk.stackblitz.io) on StackBlitz. --\u003e\n\n## Install\n\n```sh\nnpm i vue-wave-skeleton\n```\n\n## Usage\n\n```js\nimport WaveSkeleton from 'vue-wave-skeleton'\n\n// register globally\napp.component('WaveSkeleton', WaveSkeleton)\n\n// or locally\nexport default {\n\tcomponents: { WaveSkeleton },\n\t// ...\n}\n```\n\n```html\n\u003c!-- place the component inside the template --\u003e\n\u003cWaveSkeleton /\u003e\n```\n\n```css\n/* and set the size in css */\n.wave-skeleton {\n\twidth: 260px;\n\theight: 30px;\n}\n```\n\n## Props\n\nRight now there aren't a lot of these. But let me know if you need some.\n\n#### transitionName\n\n-  _Optional_\n-  Type: `String`\n-  Name of your cursom enter/leave transition, you want to use instead of the default fade.\n\n## CSS Variables\n\nSome css properties can be easily changed by setting css variables.\n\n```css\n/* the defaults: */\n.gooey-background {\n\t/* name of the infinite animation, the default is a simple fade */\n\t--wave-skeleton-animation: wave-skeleton-fade;\n\t/* duration of the animation */\n\t--wave-skeleton-duration: 800ms;\n\t/* stroke color of the wave */\n\t--wave-skeleton-color: #828282;\n\t/* stroke width */\n\t--wave-skeleton-stroke-width: 5.2px;\n\t/* shape of the path cap */\n\t--wave-skeleton-stroke-linecap: round;\n}\n```\n\n## Sizes in CSS\n\nRight now this component doesn't have a default height or width, so it's for you to decide on it yourself and set it.\n\nThe generall rule is to have matching `height` between components you want to have looking similar.\n\nTo add other sizes e.g. to represent titles or captions, use classes, like `.title` or `.caption`.\n\n```html\n\u003cWaveSkeleton class=\"title\" /\u003e \u003cWaveSkeleton class=\"title smaller\" /\u003e\n```\n\n```css\n.wave-skeleton.title {\n\twidth: 280px;\n\theight: 50px;\n}\n.wave-skeleton.smaller {\n\twidth: 130px;\n}\n```\n\n---\n\n### About the effect\n\nThe original solution I've based mine is this [codepen by Varun Vachhar](https://codepen.io/winkerVSbecks/pen/EVJGVj). Also check out [my prototype codepen](https://codepen.io/thetarnav/details/bGRVbro) where I've tried to adapt this solution.\n\nGenerally I've made this component to use in my personal projects. But let me know if you have any ideas / requests regarding this component. It's a really cool effect, so I would like to tur it into an even better component.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthetarnav%2Fvue-wave-skeleton","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthetarnav%2Fvue-wave-skeleton","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthetarnav%2Fvue-wave-skeleton/lists"}