@skeleton-elements/vue

2.0.0 • Public • Published

Skeleton Elements Vue

Skeleton elements (aka UI Skeletons, Skeleton Screens, Ghost Elements) - UI for improved perceived performance

Documentation

See the documentation with examples and API documentation.

Installation

With npm:

npm i @skeleton-elements/vue --save

Styles

Skeleton Elements requires stylesheet to be included:

<link rel="stylesheet" href="path/to/skeleton-elements.css>

Wiht bunder (like webpack) you can import syles directly from JavaScript:

import '@skeleton-elements/vue/skeleton-elements.css';

Or it can be included for each component separately:

  • @skeleton-elements/vue/skeleton-avatar.css - Avatar component
  • @skeleton-elements/vue/skeleton-block.css - Block component
  • @skeleton-elements/vue/skeleton-image.css - Image component
  • @skeleton-elements/vue/skeleton-text.css - Text component
  • @skeleton-elements/vue/skeleton-effects.css - Effects

SCSS

SCSS styles are also included:

  • @skeleton-elements/vue/skeleton-elements.scss - All styles
  • @skeleton-elements/vue/skeleton-avatar.scss - Avatar component
  • @skeleton-elements/vue/skeleton-block.scss - Block component
  • @skeleton-elements/vue/skeleton-image.scss - Image component
  • @skeleton-elements/vue/skeleton-text.scss - Text component
  • @skeleton-elements/vue/skeleton-effects.scss - Effects

Components

The following components are available:

  • SkeletonAvatar - responsive avatar placeholder
  • SkeletonBlock - block placeholder
  • SkeletonImage - responsive image placeholder
  • SkeletonText - skeleton text (uses custom Skeleton font)

Usage

See the documentation for more examples and API documentation.

<template>
  <div id="app">
    ...
    <div v-if="loading" class="user">
      <div class="user-avatar">
        <skeleton-avatar effect="fade" :size="120" />
      </div>
      <div class="user-name">
        <skeleton-text effect="fade">John Doe</skeleton-text>
      </div>
    </div>
    ...
  </div>
</template>
<script>
  // import Skeleton components
  import { SkeletonAvatar, SkeletonText } from '@skeleton-elements/vue';

  // import Skeleton styles
  import '@skeleton-elements/vue/skeleton-elements.css';

  export default {
    // register components
    components: {
      SkeletonAvatar,
      SkeletonText,
    },
    data() {
      return {
        loading: true,
      };
    },
  };
</script>

Contribution

Yes please! See the contributing guidelines for details.

Licence

This project is licensed under the terms of the MIT license.

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 2.0.0
    15
    • latest

Version History

Package Sidebar

Install

npm i @skeleton-elements/vue

Weekly Downloads

27

Version

2.0.0

License

MIT

Unpacked Size

40.4 kB

Total Files

38

Last publish

Collaborators

  • nolimits4web