πŸš€ Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more β†’
Socket
DemoInstallSign in
Socket

tw-to-css

Package Overview
Dependencies
Maintainers
1
Versions
12
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

tw-to-css

Tailwindcss Inline CSS

0.0.12
latest
Source
npm
Version published
Weekly downloads
137K
-10.05%
Maintainers
1
Weekly downloads
Β 
Created
Source

πŸ”„ Tailwind to CSS (tw-to-css)

Transform Tailwind classes to pure CSS using our plug-and-play package, compatible with both CSR and SSR. The package also includes the option to convert the output to JSON for use with React or other tools.

Here's a list of advantages of using the package:

  • βœ… Simplifies integration of Tailwind CSS into projects
  • βœ… Compatible with both Client-side and Server-side Rendering
  • βœ… Plug-and-play, no configuration necessary
  • βœ… Option to convert output to JSON for use with React or other tools
  • βœ… Improves performance by eliminating runtime processing
  • βœ… Reduces project size and build time
  • βœ… Maintains the readability and maintainability of the Tailwind CSS codebase

Installation

NPM module

npm install tw-to-css -E
yarn add tw-to-css -E

CDN

<script src="https://unpkg.com/tw-to-css@0.0.12/dist/cdn.min.js"></script>

Usage

import { twi, twj } from "tw-to-css";

// Convert classes to inline CSS
const styleInline = twi(`bg-white mx-auto`);
// Output: margin-left:auto;margin-right:auto;background-color:rgb(255, 255, 255);

// Convert classes to JSON
const styleJSON = twj(`bg-white mx-auto`);
// Output: {marginLeft: 'auto', marginRight: 'auto', backgroundColor: 'rgb(255, 255, 255)'}

The twi and twj functions accept multiple types of inputs.

  • Template Literal
twi`bg-blue-700 ${false && "rounded"}`;
  • Objects
twi({ "bg-blue-700": true, rounded: false, underline: isTrue() });
  • Arrays
twi([["bg-blue-700"], ["text-white", "rounded"], [["underline"]]]);
  • String
twi("bg-blue-700 text-white");

twi and twj functions take an additional options object that allows you to configure the output.

Options:

OptionTypeDefaultResult
minifybooleantrueCompresses the CSS code
mergebooleantrueCombines all generated CSS classes into a single style block.

Example:

twi("bg-white mx-auto", { minify: false, merge: false });
/*
Output:
.mx-auto {
    margin-left: auto;
    margin-right: auto
}
  .bg-white {
    background-color: rgb(255, 255, 255)
}
*/

You can also configure your own Tailwind config using the tailwindToCSS function:

import { tailwindToCSS } from "tw-to-css";

const { twi, twj } = tailwindToCSS({
  config: {
    theme: {
      extend: {
        colors: {
          "custom-color": "#ff0000",
        },
      },
    },
  },
});

Example of usage with React:

import * as React from "react";
import { twj } from "tw-to-css";

export default function EmailTemplate() {
  return (
    <html>
      <body style={twj("font-sans text-md bg-white py-4")}>
        <h1 style={twj("text-black text-center p-0 my-2 mx-0")}>Tailwind to CSS!</h1>
        <p style={twj("text-gray-400 text-center")}>Transform Tailwind classes to pure CSS</p>
      </body>
    </html>
  );
}

/*
Output:
<html>
  <body
    style="
      background-color: rgb(255, 255, 255);
      font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,
        'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif,
        'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',
        'Noto Color Emoji';
      padding-top: 1rem;
      padding-bottom: 1rem;
    "
  >
    <h1
      style="
        margin: 0.5rem 0px;
        padding: 0px;
        text-align: center;
        color: rgb(0, 0, 0);
      "
    >
      Tailwind to CSS!
    </h1>
    <p style="color: rgb(156, 163, 175); text-align: center">
      Transform Tailwind classes to pure CSS
    </p>
  </body>
</html>
*/

Keywords

tailwind

FAQs

Package last updated on 27 Oct 2023

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