Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

100+ abstract shapes with gradient for design & dev project

License

NotificationsYou must be signed in to change notification settings

lowcoder-org/coolshapes-react

 
 

Repository files navigation

Coolshapes

Coolshapes

licensenpm package

A simple, fun project for the sake of creating some cool-looking abstract shapes with little grainy gradients crafted by@realvjy. Coolshapes is a completely open-source set of 100+ abstract shapes crafted for any design and development projects. Free for both commercial and personal use. Licensed under MIT.

Table of Contents

Installation

npm install coolshapes-react

or

yarn add coolshapes-react

How to use

There are two types of components available inCoolshapes, which you can use:Global component andComponentfor each category of shapes. and, you can pass additionalprops to adjust the shapes.

Global component example

Just import the Global componentCoolshape and it will work.

import{Coolshape}from"coolshapes-react";constApp=()=>{return<Coolshapetype="star"index={0}size={48}noise={true}/>;};exportdefaultApp;

Component with shape category example

You can import the component for specific category -Star,Ellipse... etc - and simply pass the index of the shape.

import{Star}from"coolshapes-react";constApp=()=>{return<Starindex={0}size={48}/>;};exportdefaultApp;

Generating random shapes

setting therandomprop to true or leaving theindex ortype prop empty would replace the shape with arandom shape every time it renders.

// renders a random shape from any categoryconstComponent=()=>{return<Coolshaperandom={true}/>;};// renders a shape from the category starconstComponent2=()=>{return<Coolshapetype="star"random={true}/>;};

Using random shape function

import{getRandomShape}from"coolshapes-react";
getRandomShape();// returns a random shape component
getRandomShape({type:"ellipse"});// returns a random shape component from the category ellipse
getRandomShape({onlyId:true});// returns shape identifier that can passed as props to the shape component// {shapeType, index}
getRandomShape({onlyId:true,type:"star"});// returns shape identifier that can passed as props to the shape component// {shapeType: "star", index}

Other Methods

All the components are mapped from object that we have given you access to

constshapes={star:[Star1,Star2, ...],ellipse:[Ellipse1,Ellipse2, ...],  ...}

Renders the shapes from all categories

import{shapes}from"coolshapes-react";constShapeGrid=()=>{return(<>{Object.keys(shapes).map((shapeType,_)=>{returnshapes[shapeType].map((Shape,index)=>{return<Shapesize={48}/>;});})}</>);};
syntax
shapes[type][index];
conststarComponents=shapes["star"];constStarComponent1=starComponents[0];

Props

namedata typedefaultdescription
sizeNumber200The dimension of shape
typeStringrandomThe category of shapes, if left empty it will randomly select a category.
noiseBooleantrueWhether to add noise to the shape or not.
indexNumberrandomThe index of shape within the shapecategory, it would randomly select a shape from the category if type prop given. index starts from 0.
randomBooleanfalseIf set true it will select a random component

notes

Index starts from number 0, so if you want to retrieve the first shape of any category, you would use the index number 0.

The shapes are SVG components behind the hood, so it's also supports all the props that can be passed in a svg element.

Categories

There are a total of115 shapes available in Coolshapes under the following categories.

namecount
star13
triangle14
moon15
polygon8
flower16
rectangle9
ellipse12
wheel7
misc11
number10

Note: While passing the category name in the component, the name will be in lower case.

Others

ClassNames and css

all the components have classnamecoolshapes assigned as default, but you can also pass custom classname of yours.

import{Star}from'coolshapes-react';exportconstShape=()=>{return(<StarclassName={"myshape"}/>)}
// make the shapes size responsive similar to img elements..coolshapes{width:100%;max-height:48px;}

Builds

We have givenumd,es andcjs versions of the build.

cjs

constCoolshapes=require("coolshapes-react");

Using with react in the browser

<!doctype html><html><head><metacharset="UTF-8"/><scriptsrc="https://unpkg.com/react@18/umd/react.development.js"></script><scriptsrc="https://unpkg.com/react-dom@18/umd/react-dom.development.js"></script><scriptsrc="https://unpkg.com/@babel/standalone/babel.min.js"></script><scriptsrc="https://unpkg.com/coolshapes-react/dist/umd/coolshapes.js"></script></head><body><divid="root"></div><scripttype="text/babel">constdomContainer=document.querySelector("#root");constroot=ReactDOM.createRoot(domContainer);constcoolshapes=window.coolshapes;constCoolshape=coolshapes.Coolshape;root.render(<Coolshape/>);</script></body></html>
unpkg
https://unpkg.com/coolshapes-react/dist/umd/coolshapes.js

Figma File

Grab it fromFigma Community

Credits

  • Crafted byrealvjy. You are always welcome to share your feedback on twitter or any other social media platform.

  • Noisy Gradients Plugin - Some of the gradients generated usingNoisy Gradients Figma plugin

Contributing

If you want to contribute, create apull request.

Support & Donation

Coffee fuels design & coding ☕️

Buy Me A Coffee

About

100+ abstract shapes with gradient for design & dev project

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript99.6%
  • JavaScript0.4%

[8]ページ先頭

©2009-2025 Movatter.jp