@yisheng90/react-loading
TypeScript icon, indicating that this package has built-in type declarations

1.5.0 • Public • Published

Skleton React Loading

Build Status codecov contributions welcome Publish NPM

Loading Skleton component building block to easily create placholder loadings.

Example

Features

🎨 Customizable - You can change the color, size and shape of the skeleton

🎮 Plug and Play - You can just import the component and start using it

🏠 Building block - You can use it as a building block to build complex loading component

🧸 Easy to adapt - It is a react component.

Docs

Storybook

Getting Started

Install via yarn or npm

npm install @yisheng90/react-loading --save

or

yarn add  @yisheng90/react-loading

Usage

There are two ways to use it.

1. Use it as a component

import Skeleton from "@yisheng90/react-loading";

<Skeleton />;

2. Use it as a building block

import Skeleton from "@yisheng90/react-loading";

const CardSkleton = () => (
  <div style={{ display: "flex", padding: "20px" }}>
    <Skeleton width={45} circle color="pink" />
    <div
      style={{
        display: "flex",
        flexDirection: "column",
        justifyContent: "space-evenly",
        width: "100%",
        marginLeft: "20px",
      }}
    >
      <Skeleton color="pink" />
      <Skeleton width="50%" color="pink" />
    </div>
  </div>
);

Props

rows?: number

Defaults to 1. It is used to determine the number of rows to be display.

notes: This option will be ignored if circle is set as true

width?: number | string

Defaults to 100%. It is used to set the width of the skeleton. You can set it using %, rem or px.

height?: number | string

Defaults to 100%. It is used to set the height of the skeleton. You can set it using %, rem or px.

circle?: boolean

Defaults to false. It is used to set shape of the skleton.

color?: string

It is used to set the color of the skleton. You can set it using hex, rgb or rgba.

translucent?: boolean

Defaults to false. It is used to set the opacity of the skleton.

radius?: number

Defaults to 4px. It is used to determine the border radius of the rows. The unit is in px.

notes: This option will be ignored if circle is set as true

Examples

Rows

<Skeleton width={250} rows={6} />

Width

    <Skeleton width={250}/>
    <Skeleton width="250px"/>
    <Skeleton width="5rem"/>

Height

    <Skeleton height={25} />
    <Skeleton height="25px" />
    <Skeleton height="3rem" />

Circle

    <Skeleton circle width={35} />
    <Skeleton circle width={55} />
    <Skeleton circle width={75} />
    <Skeleton circle width={95} />
    <Skeleton circle width={115} />

Color

    <Skeleton color="pink" circle width={35}/>
    <Skeleton color="#F8B195" circle width={35}/>
    <Skeleton color="#2A363B" circle width={35}/>
    <Skeleton color="rgb(25,67,89)" circle width={35}/>
    <Skeleton color="rgba(25,67,89, 0.3)" circle width={35}/>

Translucent

<Skeleton color="black" width={250} height={30} translucent />

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

Contributors

Yi Sheng Lee

License

MIT

Readme

Keywords

Package Sidebar

Install

npm i @yisheng90/react-loading

Weekly Downloads

120

Version

1.5.0

License

MIT

Unpacked Size

140 kB

Total Files

29

Last publish

Collaborators

  • yisheng90