Skip to content

Commit

Permalink
feat
Browse files Browse the repository at this point in the history
  • Loading branch information
cristicretu committed Apr 11, 2023
1 parent 8efdbaa commit 3f76608
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 7 deletions.
11 changes: 8 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,10 @@ $ npm install meshgrad
## Use

### Options:
- length: *number* - ammount of color stops
- baseColor: *string* - hex string that specifies the root color
- hash: *number* - specify a number that will generate the same position each time

- length: _number_ - ammount of color stops
- baseColor: _string_ - hex string that specifies the root color
- hash: _number_ - specify a number that will generate the same position each time

### Vanilla Javascript

Expand Down Expand Up @@ -62,3 +63,7 @@ export function App() {
return <div style={generateJSXMeshGradient(ELEMENTS)} className="..." />;
}
```

### License

MIT
2 changes: 1 addition & 1 deletion meshgrad/dist/index.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion meshgrad/dist/index.mjs
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
var i=()=>Math.round(Math.random()*360),c=n=>Math.round(Math.random()*(n*100)%100),g=(n,t,e)=>Math.round(t/e*(n*100)%100),d=n=>{if(!!n){n=n.replace(/#/g,""),n.length===3&&(n=n.split("").map(function(b){return b+b}).join(""));var t=/^([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})[\da-z]{0,0}$/i.exec(n);if(!!t){var e=parseInt(t[1],16),r=parseInt(t[2],16),a=parseInt(t[3],16);e/=255,r/=255,a/=255;var o=Math.max(e,r,a),s=Math.min(e,r,a),u=(o+s)/2;if(o==s)u=0;else{var m=o-s;switch(o){case e:u=(r-a)/m+(r<a?6:0);break;case r:u=(a-e)/m+2;break;case a:u=(e-r)/m+4;break}u/=6}return u=Math.round(360*u),u}}},p=(n,t)=>Array.from({length:n},(e,r)=>r===0?`hsl(${t}, 100%, 74%)`:r<n/1.4?`hsl(${t-30*(1-2*(r%2))*(r>2?r/2:r)}, 100%, ${64-r*(1-2*(r%2))*1.75}%)`:`hsl(${t-150*(1-2*(r%2))}, 100%, ${66-r*(1-2*(r%2))*1.25}%)`),M=(n,t,e)=>Array.from({length:n},(r,a)=>`radial-gradient(at ${e?g(a,e,n):c(a)}% ${e?g(a*10,e,n):c(a*10)}%, ${t[a]} 0px, transparent 55%)
var i=()=>Math.round(Math.random()*360),c=n=>Math.round(Math.random()*(n*100)%100),g=(n,t,e)=>Math.round(t/e*(n*100)%100),d=n=>{if(n){n=n.replace(/#/g,""),n.length===3&&(n=n.split("").map(function(b){return b+b}).join(""));var t=/^([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})[\da-z]{0,0}$/i.exec(n);if(t){var e=parseInt(t[1],16),r=parseInt(t[2],16),a=parseInt(t[3],16);e/=255,r/=255,a/=255;var o=Math.max(e,r,a),s=Math.min(e,r,a),u=(o+s)/2;if(o==s)u=0;else{var m=o-s;switch(o){case e:u=(r-a)/m+(r<a?6:0);break;case r:u=(a-e)/m+2;break;case a:u=(e-r)/m+4;break}u/=6}return u=Math.round(360*u),u}}},p=(n,t)=>Array.from({length:n},(e,r)=>r===0?`hsl(${t}, 100%, 74%)`:r<n/1.4?`hsl(${t-30*(1-2*(r%2))*(r>2?r/2:r)}, 100%, ${64-r*(1-2*(r%2))*1.75}%)`:`hsl(${t-150*(1-2*(r%2))}, 100%, ${66-r*(1-2*(r%2))*1.25}%)`),M=(n,t,e)=>Array.from({length:n},(r,a)=>`radial-gradient(at ${e?g(a,e,n):c(a)}% ${e?g(a*10,e,n):c(a*10)}%, ${t[a]} 0px, transparent 55%)
`),f=(n,t,e)=>{let r=p(n,t||i()),a=M(n,r,e||void 0);return[r[0],a.join(",")]},$=(n,t,e)=>{let[r,a]=f(n,d(t)?d(t):void 0,e||void 0);return`background-color: ${r}; background-image:${a}`},k=(n,t,e)=>{let[r,a]=f(n,d(t)?d(t):void 0,e||void 0);return{backgroundColor:r,backgroundImage:a}};export{k as generateJSXMeshGradient,$ as generateMeshGradient};
16 changes: 14 additions & 2 deletions meshgrad/package.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"version": "0.0.11",
"version": "0.0.15",
"description": "A tiny utility for generating CSS Mesh Gradients",
"homepage": "https://meshgrad.cretu.dev",
"name": "meshgrad",
Expand Down Expand Up @@ -29,7 +29,19 @@
"dev": "tsup src --watch"
},
"keywords": [
"mesh-gradients"
"mesh-gradients",
"gradient",
"css-gradient",
"meshgradient",
"gradient-generator",
"npm-gradient",
"npm-meshgradient",
"css-meshgradient",
"mesh-gradient-generator",
"mesh-gradient-generator-npm",
"mesh-gradient-generator-npm-package",
"mesh-gradient-generator-npm-package-css",
"mesh-gradient-generator-npm-package-css-meshgradient"
],
"devDependencies": {
"tsup": "^6.2.2"
Expand Down

1 comment on commit 3f76608

@vercel
Copy link

@vercel vercel bot commented on 3f76608 Apr 11, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.