Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

react-creative-cursor

Package Overview
Dependencies
Maintainers
1
Versions
17
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-creative-cursor

A creative and customizable React cursor component.

  • 1.2.7
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
42
increased by31.25%
Maintainers
1
Weekly downloads
 
Created
Source

react-creative-cursor

Version

A creative and customizable React cursor follower component. Inspired by cuberto.com and 14islands.com.

Options

  • Magnetic cursor
  • Sticky cursor
  • Gelly animation
  • Add background color and background image
  • Add text
  • Change cursor size smoothly
  • Exclusion Mode

Demo

Installation

npm i react-creative-cursor

Basic Example

import { Cursor } from 'react-creative-cursor';
import 'react-creative-cursor/dist/styles.css';

const index = () => {
  return (
    <>
      <Cursor isGelly={true} />
    </>
  );
};

It's essential to add the Cursor component to each route if you want to use all options properly. otherwise, if you want to use cursor follower, feel free and import in app or layout component.

Magnetic Cursor

import { Cursor } from 'react-creative-cursor';
import 'react-creative-cursor/dist/styles.css';

const index = () => {
  return (
    <>
      <Cursor isGelly={true} />
      <div data-cursor-magnetic>
        <h1>Magnetic Cursor</h1>
      </div>
    </>
  );
};

Sticky Cursor

import { Cursor } from 'react-creative-cursor';
import 'react-creative-cursor/dist/styles.css';

const index = () => {
  return (
    <>
      <Cursor isGelly={true} />
      <div data-cursor-stick="#stick-title">
        <h1 id="stick-title" style={{textAlign: center}}>Sticky Cursor</h1>
      </div>
    </>
  );
};

It's better for the element which the pointer sticks to be a block and text-center element.

Change Color

import { Cursor } from 'react-creative-cursor';
import 'react-creative-cursor/dist/styles.css';

const index = () => {
  return (
    <>
      <Cursor isGelly={true} />
      <div data-cursor-color="#61dbfb">
        <h1 id="stick-title">Colorized Cursor</h1>
      </div>
    </>
  );
};

Change Size

import { Cursor } from 'react-creative-cursor';
import 'react-creative-cursor/dist/styles.css';

const index = () => {
  return (
    <>
      <Cursor isGelly={true} />
      <div data-cursor-size="80px">
        <h1 id="stick-title">Sized Cursor</h1>
      </div>
    </>
  );
};

Change Background Image

import { Cursor } from 'react-creative-cursor';
import 'react-creative-cursor/dist/styles.css';

const index = () => {
  return (
    <>
      <Cursor isGelly={true} />
      <div data-cursor-background-image="https://reactjs.org/logo-og.png" data-cursor-size="200px">
        <h1 id="stick-title">React.js</h1>
      </div>
    </>
  );
};

Exclusion Mode

import { Cursor } from 'react-creative-cursor';
import 'react-creative-cursor/dist/styles.css';

const index = () => {
  return (
    <>
      <Cursor isGelly={true} />
      <div data-cursor-exclusion style={{backgroundColor: '#fff'}}>
        <h1 id="stick-title">React.js</h1>
      </div>
    </>
  );
};

Add Text

import { Cursor } from 'react-creative-cursor';
import 'react-creative-cursor/dist/styles.css';

const index = () => {
  return (
    <>
      <Cursor isGelly={true} />
      <div data-cursor-text="React" data-cursor-size="100px">
        <h1 id="stick-title">React.js</h1>
      </div>
    </>
  );
};

Props

PropsValue TypeDefault Value
isGellybooleanfalse
animationDurationnumber1.25
animationEasestring | gsap.EaseFunction | undefinedExpo.easeOut
gellyAnimationAmountnumber50
stickAnimationAmountnumber0.09
stickAnimationDurationnumber0.7
stickAnimationEasestring | gsap.EaseFunction | undefinedPower4.easeOut
magneticAnimationAmountnumber0.2
magneticAnimationDurationnumber0.7
magneticAnimationEasestring | gsap.EaseFunction | undefinedPower4.easeOut
colorAnimationEasestring | gsap.EaseFunction | undefinedPower4.easeOut
colorAnimationDurationnumber0.2
backgroundImageAnimationEasestring | gsap.EaseFunction | undefinedundefined
backgroundImageAnimationDurationnumber0
sizeAnimationEasestring | gsap.EaseFunction | undefinedExpo.easeOut
sizeAnimationDurationnumber0.5
textAnimationEasestring | gsap.EaseFunction | undefinedExpo.easeOut
textAnimationDurationnumber1
cursorSizenumber48
cursorBackgrounColorstring'#000'
exclusionBackgroundColorstring'#fff'
cursorInnerColorstring'#fff'

Keywords

FAQs

Package last updated on 04 Jul 2022

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc