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

uicolors-generator

Package Overview
Dependencies
Maintainers
0
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

uicolors-generator

Generate a Tailwind CSS palette from a single color

  • 1.2.4
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
202
decreased by-40.59%
Maintainers
0
Weekly downloads
 
Created
Source

🎨 uicolors-generator

Generate a Tailwind CSS palette from a single color

Install

pnpm add uicolors-generator chroma-js

pnpm add -D @types/chroma-js

Usage

import { getTailwindColors, getTailwindHsl } from "uicolors-generator";

// Default usage
const palette = getTailwindColors("#ff4f00");

console.log(palette);
// {
//   50: "32deg 100% 96%",
//   100: "34deg 100% 91%",
//   200: "31deg 100% 82%",
//   300: "30deg 100% 71%",
//   400: "26deg 100% 60%",
//   500: "23deg 100% 52%",
//   600: "19deg 100% 50%",
//   700: "15deg 98% 40%",
//   800: "13deg 87% 34%",
//   900: "13deg 83% 28%",
//   950: "11deg 89% 15%",
// }

// Passing `asHex: true` will return a hex palette
const hexPalette = getTailwindColors("#ff4f00", {
  asHex: true,
});

console.log(hexPalette);
// {
//   50: "#fff6ec",
//   100: "#ffecd3",
//   200: "#ffd4a5",
//   300: "#ffb56d",
//   400: "#ff8a32",
//   500: "#ff690a",
//   600: "#ff4f00",
//   700: "#cc3602",
//   800: "#a12b0b",
//   900: "#82260c",
//   950: "#461004",
// }

// Passing `includeDefault: true` will include the default
// color in the palette
const paletteWithDefault = getTailwindColors("#ff4f00", {
  includeDefault: true,
});

console.log(paletteWithDefault);
// {
//   50: "32deg 100% 96%",
//   100: "34deg 100% 91%",
//   200: "31deg 100% 82%",
//   300: "30deg 100% 71%",
//   400: "26deg 100% 60%",
//   500: "23deg 100% 52%",
//   600: "19deg 100% 50%",
//   700: "15deg 98% 40%",
//   800: "13deg 87% 34%",
//   900: "13deg 83% 28%",
//   950: "11deg 89% 15%",
//   DEFAULT: "19deg 100% 50%",
// }

// Passing `blackColor` and `whiteColor` will use those
// colors instead of the default black and white
const paletteWithBW = getTailwindColors("#ff4f00", {
  blackColor: "#27272a",
  whiteColor: "#fafafa",
});

console.log(paletteWithBW);
// {
//   50: "32deg 100% 96%",
//   100: "34deg 100% 91%",
//   200: "31deg 100% 82%",
//   300: "30deg 100% 71%",
//   400: "26deg 100% 60%",
//   500: "23deg 100% 52%",
//   600: "19deg 100% 50%",
//   700: "15deg 98% 40%",
//   800: "13deg 87% 34%",
//   900: "13deg 83% 28%",
//   950: "11deg 89% 15%",
//   black: "240deg 4% 16%",
//   white: "0deg 0% 98%",
// }

// If you just need the HSL channels for a single color...
const hsl = getTailwindHsl("#ff4f00");

console.log(hsl);
// "19deg 100% 50%"

Tailwind config

You can use the getTailwindColors function to generate a palette and then use it in your Tailwind config.

// tailwind.config.ts
import { getTailwindColors } from "uicolors-generator";

export default {
  theme: {
    extend: {
      colors: {
        steel: getTailwindColors("#232425", { includeDefault: true }),
        badass: getTailwindColors("#bada55", { includeDefault: true }),
      },
    },
  },
};

Then in your code, you can use your palette and shades like so:

// your-project/pages/index.tsx
export default function HelloWorld() {
  return (
    <div className="bg-steel-800">
      <h1 className="text-badass">Hello World</h1>
      <p className="text-badass-300">Your palette at your fingertips.</p>
    </div>
  );
}

Keywords

FAQs

Package last updated on 04 Oct 2024

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