twcss-to-sass
HTML template to SASS converter for TailwindCSS
About
There are many tailwind component sharing platforms, snippet websites, code pens, UI kits, etc. We generally see static demos and inline class lists like <div class="text-base leading-6 text-gray-500 hover:text-gray-900">...
. If you want to choose the SASS option for your project, you need to convert inline classes and templates one by one. And this process takes time. This tool converts inline class lists to SASS and it takes just milliseconds.
This tool is useful for a quick start but all cases did not consider. There are many edge cases. So, you may need to refactor output HTML and SASS results.
Use converter playground for quick start.
📦 Installation
NPM
npm i @egoistdeveloper/twcss-to-sass
CDN
<script src="https://unpkg.com/@egoistdeveloper/twcss-to-sass@latest/dist/umd/index.js"></script>
Todo
Input-Output
Template Input
<div class="bg-white">
<div class="flex justify-center items-center min-h-screen min-w-full">
<div class="flex relative">
<div class="w-72 h-40 bg-green-400 transform transition-all">
My Text 1
</div>
</div>
</div>
</div>
HTML Output
<div class="container-start">
<div class="some-div">
<div class="class-div-3">
<div class="inner-div">
My Text 1
</div>
</div>
</div>
</div>
SASS Output
.container-start {
@apply bg-white;
.some-div {
@apply flex items-center justify-center min-h-screen min-w-full;
.class-div-3 {
@apply flex relative;
.inner-div {
@apply bg-green-400 h-40 transform transition-all w-72;
}
}
}
}
🔰 Browser Example
<script src="./../../dist/umd/index.js"></script>
<script src="https://unpkg.com/@egoistdeveloper/twcss-to-sass@latest/dist/umd/index.js"></script>
<script>
const { convertToSass } = TwCssToSass,
html = `
<div class="bg-white">
<div class="flex justify-center items-center min-h-screen min-w-full">
<div class="flex relative">
<div class="w-72 h-40 bg-green-400 transform transition-all">
My Text 1
</div>
</div>
</div>
</div>
`;
console.log(convertToSass(html).html);
console.log(convertToSass(html).sass);
</script>
🔰 NodeJS Example
const TwCssToSass = require('./twcss-to-sass');
const path = require('path');
const fs = require('fs');
const htmlContent = fs.readFileSync(
path.resolve(__dirname, './templates/template-1.html'),
'UTF-8'
)
console.log(TwCssToSass.convertToSass(htmlContent).html);
console.log(TwCssToSass.convertToSass(htmlContent).sass);
🔰 Angular, React, Vue, etc...
import { convertToSass } from '@egoistdeveloper/twcss-to-sass';
const htmlContent = '<div class="w-72 h-40 bg-green-400 transform transition-all">My Text 1</div>';
console.log(convertToSass(htmlContent).html);
console.log(convertToSass(htmlContent).sass);
Attribution
Wind icons created by smalllikeart - Flaticon