@ingcrea/aumic-tailwind-killer 4.1.4 → 4.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
- # ⚔️ AUM-IC Tailwind Killer
1
+ # ⚔️ AUM-IC Tailwind Killer
2
2
 
3
- > 🌐 **Navigation:** 🇲🇽 [Leer en Español](./README.es.md)  |  📜 [Manifesto (EN)](./MANIFEST.md)  |  📜 [Manifiesto (ES)](./MANIFEST.es.md)
3
+ > 🌐 **Navigation:** 🇲🇽 [Leer en Español](./README.es.md)  |  📜 [Manifesto (EN)](./MANIFEST.md)  |  📜 [Manifiesto (ES)](./MANIFEST.es.md)
4
4
 
5
5
  [![version](https://img.shields.io/badge/version-4.1.3-crimson?style=flat-square)](https://www.npmjs.com/package/@ingcrea/aumic-tailwind-killer)
6
6
  [![Stars](https://img.shields.io/github/stars/ingcrea/aumic-tailwind-killer?style=flat-square&color=gold)](https://github.com/ingcrea/aumic-tailwind-killer/stargazers)
@@ -10,15 +10,15 @@
10
10
  [![Node.js](https://img.shields.io/badge/Node.js-%3E%3D18.0-339933?style=flat-square)](https://nodejs.org)
11
11
  [![License: AGPL v3](https://img.shields.io/badge/License-AGPL_v3-blue.svg?style=flat-square)](https://www.gnu.org/licenses/agpl-3.0)
12
12
 
13
- **AUM-IC Tailwind Killer** is not just a CLI orchestrator — it is the technical manifestation of a design standard. It is named after the **Arquitectura de Universos Multidimensionales de Ingeniería Creativa (AUM-IC)** standard: a philosophy built to restore sanity, absolute control and infinite scalability to software engineers.
13
+ **AUM-IC Tailwind Killer** is not just a CLI orchestrator — it is the technical manifestation of a design standard. It is named after the **Arquitectura de Universos Multidimensionales de Ingeniería Creativa (AUM-IC)** standard: a philosophy built to restore sanity, absolute control and infinite scalability to software engineers.
14
14
 
15
- Designed under the architectural rigor of **INGENIERÍA CREATIVA Y DESARROLLOS TECNOLÓGICOS S.A.S. (IngCrea)**, this high-performance "Tailwind Killer" audits, extracts, compiles (via JIT) and purges your codebase in seconds — transmuting the chaos of utility classes into an obfuscated, standardized, dependency-free ecosystem (Zero-Bloat) powered by an implacable *Multi-Level JIT Cache (DuckDB + Node.js)* architecture with universal AST interceptors.
15
+ Designed under the architectural rigor of **INGENIERÍA CREATIVA Y DESARROLLOS TECNOLÓGICOS S.A.S. (IngCrea)**, this high-performance "Tailwind Killer" audits, extracts, compiles (via JIT) and purges your codebase in seconds — transmuting the chaos of utility classes into an obfuscated, standardized, dependency-free ecosystem (Zero-Bloat) powered by an implacable *Multi-Level JIT Cache (DuckDB + Node.js)* architecture with universal AST interceptors.
16
16
 
17
17
  ---
18
18
 
19
- ## ⚡ Quick Start (60 seconds)
19
+ ## âš¡ Quick Start (60 seconds)
20
20
 
21
- > **Prerequisites:** Node.js >= 18.0 · No extra system installations required. DuckDB is bundled.
21
+ > **Prerequisites:** Node.js >= 18.0 · No extra system installations required. DuckDB is bundled.
22
22
 
23
23
  ```bash
24
24
  # 1. Audit your project without touching any file (recommended first step)
@@ -35,7 +35,7 @@ npx @ingcrea/aumic-tailwind-killer -m restore -t ./my-project
35
35
 
36
36
  ---
37
37
 
38
- ## ⚡ Why AUM-IC Tailwind Killer? (The Pain Cure)
38
+ ## âš¡ Why AUM-IC Tailwind Killer? (The Pain Cure)
39
39
 
40
40
  Debates in global software architecture forums expose universal complaints about Tailwind CSS at scale. AUM-IC Tailwind Killer was forged to annihilate exactly those pains:
41
41
 
@@ -43,39 +43,39 @@ Debates in global software architecture forums expose universal complaints about
43
43
  The #1 developer complaint. Components flooded with kilometer-long strings (`class="flex items-center justify-between p-4 bg-white shadow-md..."`) that destroy readability. AUM-IC transmutes that toxic chain into an elegant, clean, obfuscated hash (`class="aumic-rs-1b3a"`). We give your DOM its visual purity back.
44
44
 
45
45
  2. **Vendor Lock-In Liberation (The Escape Hatch):**
46
- CTOs dread tying a massive project to third-party framework syntax that could change or become obsolete. With AUM-IC Tailwind Killer, **you are no longer Tailwind's slave**. Build fast with utilities — when you ship to production, our engine physically purges it from your `package.json` and extracts a standard, framework-agnostic `.css` file. You reclaim code sovereignty.
46
+ CTOs dread tying a massive project to third-party framework syntax that could change or become obsolete. With AUM-IC Tailwind Killer, **you are no longer Tailwind's slave**. Build fast with utilities — when you ship to production, our engine physically purges it from your `package.json` and extracts a standard, framework-agnostic `.css` file. You reclaim code sovereignty.
47
47
 
48
48
  3. **Architectural Restoration (Separation of Concerns):**
49
49
  Purists hate mixing structure and design in the same line. AUM-IC lets you enjoy Tailwind's speed in development, but in production our orchestrator extracts design into a deterministic CSS ecosystem, restoring the sacred boundary between your logic and your styles.
50
50
 
51
51
  4. **Obfuscation, Collision Prevention and AI Semantic Naming:**
52
- We don't obfuscate only for anti-scraping security. By generating mathematical hashes (`aumic-rs-[hash]`), we **unify tags and guarantee zero style collisions** after a massive migration. AUM-IC also integrates an optional **AI Semantic Naming** feature (locally via *Ollama* or remotely via *Claude, Gemini, DeepSeek, Codex*). Thanks to our deduplication algorithm, the AI **only processes UNIQUE combinations** — never your full source code. This saves millions of tokens and shields your privacy.
52
+ We don't obfuscate only for anti-scraping security. By generating mathematical hashes (`aumic-rs-[hash]`), we **unify tags and guarantee zero style collisions** after a massive migration. AUM-IC also integrates an optional **AI Semantic Naming** feature (locally via *Ollama* or remotely via *Claude, Gemini, DeepSeek, Codex*). Thanks to our deduplication algorithm, the AI **only processes UNIQUE combinations** — never your full source code. This saves millions of tokens and shields your privacy.
53
53
 
54
54
  5. **Extreme Performance (Zero-Bloat Build Time):**
55
- Eliminating Tailwind's massive engine from your CI/CD pipelines dramatically accelerates build times for Next.js, Astro, and Vite — saving real server resources.
55
+ Eliminating Tailwind's massive engine from your CI/CD pipelines dramatically accelerates build times for Next.js, Astro, and Vite — saving real server resources.
56
56
 
57
57
  ---
58
58
 
59
- ## 🆚 How Does It Compare?
59
+ ## 🆚 How Does It Compare?
60
60
 
61
61
  | Feature | AUM-IC Tailwind Killer | PurgeCSS | UnoCSS | vanilla-extract | Manual Migration |
62
62
  | :--- | :---: | :---: | :---: | :---: | :---: |
63
- | **Removes unused CSS** | ✅ | ✅ | ✅ | ✅ | ✅ |
64
- | **Obfuscates class names** | ✅ | ❌ | ❌ | Partial | ❌ |
65
- | **Zero-Bloat (removes Tailwind dep)** | ✅ | ❌ | ❌ | ✅ | ✅ |
66
- | **Fully automated migration** | ✅ | ❌ | ❌ | ❌ | ❌ |
67
- | **Rollback / Undo** | ✅ | ❌ | ❌ | ❌ | ❌ |
68
- | **AST (no regex hacks)** | ✅ | ❌ | N/A | N/A | N/A |
69
- | **Supports v1 / v2 / v3 / v4 Oxide** | ✅ | Partial | ✅ | N/A | Manual |
70
- | **AI Semantic Naming** | ✅ | ❌ | ❌ | ❌ | ❌ |
71
- | **Offline / Air-Gapped** | ✅ | ✅ | ✅ | ✅ | ✅ |
72
- | **Prevents CSS collisions post-migration** | ✅ | ❌ | ❌ | ✅ | Manual |
63
+ | **Removes unused CSS** | ✅ | ✅ | ✅ | ✅ | ✅ |
64
+ | **Obfuscates class names** | ✅ | ❌ | ❌ | Partial | ❌ |
65
+ | **Zero-Bloat (removes Tailwind dep)** | ✅ | ❌ | ❌ | ✅ | ✅ |
66
+ | **Fully automated migration** | ✅ | ❌ | ❌ | ❌ | ❌ |
67
+ | **Rollback / Undo** | ✅ | ❌ | ❌ | ❌ | ❌ |
68
+ | **AST (no regex hacks)** | ✅ | ❌ | N/A | N/A | N/A |
69
+ | **Supports v1 / v2 / v3 / v4 Oxide** | ✅ | Partial | ✅ | N/A | Manual |
70
+ | **AI Semantic Naming** | ✅ | ❌ | ❌ | ❌ | ❌ |
71
+ | **Offline / Air-Gapped** | ✅ | ✅ | ✅ | ✅ | ✅ |
72
+ | **Prevents CSS collisions post-migration** | ✅ | ❌ | ❌ | ✅ | Manual |
73
73
 
74
74
  > **Summary:** PurgeCSS only removes dead code. UnoCSS is a framework, not a migrator. vanilla-extract requires a full manual rewrite. AUM-IC Tailwind Killer is the only tool that **automates the complete escape** from Tailwind with safety, reversibility and zero external dependencies.
75
75
 
76
76
  ---
77
77
 
78
- ## 🦖 Architecture v4.1.3: Multi-Level JIT Cache
78
+ ## 🦖 Architecture v4.1.3: Multi-Level JIT Cache
79
79
 
80
80
  AUM-IC operates under a two-level cache architecture powered 100% by Node.js and analytical databases:
81
81
 
@@ -90,76 +90,76 @@ AUM-IC operates under a two-level cache architecture powered 100% by Node.js and
90
90
 
91
91
  ---
92
92
 
93
- ## 🧠 5-Phase Pipeline (The Transmutation Engine)
93
+ ## 🧠 5-Phase Pipeline (The Transmutation Engine)
94
94
 
95
95
  ```
96
96
  Your Project (source code)
97
- │
98
- ▼
99
- ┌───────────────────────────────────────────────────────────┐
100
- │ PHASE 1 ─ Reconnaissance & Pre-Flight │
101
- │ Validates Git status, permissions, excludes │
102
- │ node_modules / .git / dist │
103
- └───────────────────────┬───────────────────────────────────┘
104
- │
105
- ▼
106
- ┌───────────────────────────────────────────────────────────┐
107
- │ PHASE 2 ─ Parallel Extraction (AST + Piscina Threads) │
108
- │ Babel/Cheerio parse JSX/Astro/Vue/HTML surgically │
109
- │ Extracts classes → Deduplicates → Unique combinations │
110
- └───────────────────────┬───────────────────────────────────┘
111
- │
112
- ▼
113
- ┌───────────────────────────────────────────────────────────┐
114
- │ PHASE 3 ─ Nomenclature Cryptography │
115
- │ Deterministic hashes aumic-rs-[hash] per combination │
116
- │ 5,000 repetitions of one class = 1 single hash in RAM │
117
- └──────────┬────────────────────────────┬───────────────────┘
118
- │ │
119
- ▼ ▼
120
- ┌──────────────────────┐ ┌────────────────────────────────┐
121
- │ L1 Cache (DuckDB) │ │ L2 Cache (Dynamic JIT) │
122
- │ 26,000+ classes │ │ Local tailwindcss compiler │
123
- │ O(1) · Offline │ │ For dynamic classes w-[Xpx] │
124
- │ Hit Rate: 99.2% │ │ Respects your installed ver. │
125
- └──────────┬───────────┘ └────────────────┬───────────────┘
126
- └────────────────────────────────┘
127
- │
128
- ▼
129
- ┌───────────────────────────────────────────────────────────┐
130
- │ PHASE 4 ─ Synthesis & Output │
131
- │ Pure unified CSS · aumic-lock.json (rollback map) │
132
- └───────────────────────┬───────────────────────────────────┘
133
- │
134
- ▼
135
- ┌───────────────────────────────────────────────────────────┐
136
- │ PHASE 5 ─ Total Eradication │
137
- │ Purges Tailwind from package.json · Rewrites components │
138
- │ Your code is free, clean and sovereign. │
139
- └───────────────────────────────────────────────────────────┘
97
+ │
98
+ â–¼
99
+ ┌───────────────────────────────────────────────────────────┐
100
+ │ PHASE 1 ─ Reconnaissance & Pre-Flight │
101
+ │ Validates Git status, permissions, excludes │
102
+ │ node_modules / .git / dist │
103
+ └───────────────────────┬───────────────────────────────────┘
104
+ │
105
+ â–¼
106
+ ┌───────────────────────────────────────────────────────────┐
107
+ │ PHASE 2 ─ Parallel Extraction (AST + Piscina Threads) │
108
+ │ Babel/Cheerio parse JSX/Astro/Vue/HTML surgically │
109
+ │ Extracts classes → Deduplicates → Unique combinations │
110
+ └───────────────────────┬───────────────────────────────────┘
111
+ │
112
+ â–¼
113
+ ┌───────────────────────────────────────────────────────────┐
114
+ │ PHASE 3 ─ Nomenclature Cryptography │
115
+ │ Deterministic hashes aumic-rs-[hash] per combination │
116
+ │ 5,000 repetitions of one class = 1 single hash in RAM │
117
+ └──────────┬────────────────────────────┬───────────────────┘
118
+ │ │
119
+ â–¼ â–¼
120
+ ┌──────────────────────┐ ┌────────────────────────────────┐
121
+ │ L1 Cache (DuckDB) │ │ L2 Cache (Dynamic JIT) │
122
+ │ 26,000+ classes │ │ Local tailwindcss compiler │
123
+ │ O(1) · Offline │ │ For dynamic classes w-[Xpx] │
124
+ │ Hit Rate: 99.2% │ │ Respects your installed ver. │
125
+ └──────────┬───────────┘ └────────────────┬───────────────┘
126
+ └────────────────────────────────┘
127
+ │
128
+ â–¼
129
+ ┌───────────────────────────────────────────────────────────┐
130
+ │ PHASE 4 ─ Synthesis & Output │
131
+ │ Pure unified CSS · aumic-lock.json (rollback map) │
132
+ └───────────────────────┬───────────────────────────────────┘
133
+ │
134
+ â–¼
135
+ ┌───────────────────────────────────────────────────────────┐
136
+ │ PHASE 5 ─ Total Eradication │
137
+ │ Purges Tailwind from package.json · Rewrites components │
138
+ │ Your code is free, clean and sovereign. │
139
+ └───────────────────────────────────────────────────────────┘
140
140
  ```
141
141
 
142
142
  ---
143
143
 
144
- ## 🔄 Before & After: What Your Code Looks Like
144
+ ## 🔄 Before & After: What Your Code Looks Like
145
145
 
146
- ### HTML / JSX — Before
146
+ ### HTML / JSX — Before
147
147
  ```html
148
148
  <div class="flex items-center justify-between p-4 bg-white shadow-md rounded-xl border border-gray-200">
149
149
  <span class="text-sm font-semibold text-gray-800">Dashboard</span>
150
150
  </div>
151
151
  ```
152
152
 
153
- ### HTML / JSX — After
153
+ ### HTML / JSX — After
154
154
  ```html
155
155
  <div class="aumic-rs-1b3a">
156
156
  <span class="aumic-rs-2c4f">Dashboard</span>
157
157
  </div>
158
158
  ```
159
159
 
160
- ### Generated CSS — After
160
+ ### Generated CSS — After
161
161
  ```css
162
- /* aumic-output.css — Pure CSS. No framework. No runtime. No dependencies. */
162
+ /* aumic-output.css — Pure CSS. No framework. No runtime. No dependencies. */
163
163
  .aumic-rs-1b3a {
164
164
  display: flex;
165
165
  align-items: center;
@@ -181,7 +181,7 @@ AUM-IC operates under a two-level cache architecture powered 100% by Node.js and
181
181
 
182
182
  ---
183
183
 
184
- ## 🔒 The `aumic-lock.json` Map (Rollback & IA Schema)
184
+ ## 🔒 The `aumic-lock.json` Map (Rollback & IA Schema)
185
185
 
186
186
  Every transmutation generates an `aumic-lock.json` in your project root. This file is your **safety net and the bridge for AI semantic naming**. Its structure:
187
187
 
@@ -213,11 +213,11 @@ Every transmutation generates an `aumic-lock.json` in your project root. This fi
213
213
  }
214
214
  ```
215
215
 
216
- This map is what powers the `-m restore` rollback — and what the AI semantic naming engine reads to produce human-readable names **without ever seeing your source code**.
216
+ This map is what powers the `-m restore` rollback — and what the AI semantic naming engine reads to produce human-readable names **without ever seeing your source code**.
217
217
 
218
218
  ---
219
219
 
220
- ## 🚀 Installation
220
+ ## 🚀 Installation
221
221
 
222
222
  > **No extra system dependencies required.** DuckDB is bundled inside the package. Works on macOS, Linux, and Windows (Node.js >= 18.0).
223
223
 
@@ -232,10 +232,10 @@ aumic-tailwind-killer -m local -t ./my-project
232
232
 
233
233
  ---
234
234
 
235
- ## 🛠 Usage Modes
235
+ ## 🛠 Usage Modes
236
236
 
237
237
  ### 1. Simulate Mode (Dry-Run)
238
- Audit your project — see how many Tailwind classes you use and preview the impact **without touching a single file**.
238
+ Audit your project — see how many Tailwind classes you use and preview the impact **without touching a single file**.
239
239
  ```bash
240
240
  npx @ingcrea/aumic-tailwind-killer -m simulate -t ./
241
241
  ```
@@ -273,21 +273,21 @@ npx @ingcrea/aumic-tailwind-killer -m local -t ./ --ai gemini --ai-key AIza...
273
273
 
274
274
  ---
275
275
 
276
- ## ⚙️ CLI Options
276
+ ## ⚙️ CLI Options
277
277
 
278
278
  | Short | Long | Description | Required |
279
279
  | :--- | :--- | :--- | :--- |
280
280
  | `-m` | `--mode` | Operation mode: `simulate`, `local`, `restore`. | **Yes** |
281
281
  | `-t` | `--target` | Path to the project directory. | **Yes** |
282
282
  | `-s` | `--scope` | Glob pattern to restrict mutation to specific files. | No |
283
- | — | `--ai` | AI provider for semantic naming: `ollama`, `claude`, `gemini`, `deepseek`, `codex`. | No |
284
- | — | `--ai-model` | Specific model name (e.g. `llama3`, `claude-3-5-sonnet`). | No |
285
- | — | `--ai-key` | Remote provider API Key (not required for `ollama`). | No |
286
- | — | `--ai-base-url` | Custom Ollama base URL (default: `http://localhost:11434`). | No |
283
+ | — | `--ai` | AI provider for semantic naming: `ollama`, `claude`, `gemini`, `deepseek`, `codex`. | No |
284
+ | — | `--ai-model` | Specific model name (e.g. `llama3`, `claude-3-5-sonnet`). | No |
285
+ | — | `--ai-key` | Remote provider API Key (not required for `ollama`). | No |
286
+ | — | `--ai-base-url` | Custom Ollama base URL (default: `http://localhost:11434`). | No |
287
287
 
288
288
  ---
289
289
 
290
- ## 📊 Benchmarks
290
+ ## 📊 Benchmarks
291
291
 
292
292
  Measured on a Next.js monorepo with **1,200 files** and **48,000 unique Tailwind classes** (MacBook Pro M2, 16GB RAM):
293
293
 
@@ -301,31 +301,34 @@ Measured on a Next.js monorepo with **1,200 files** and **48,000 unique Tailwind
301
301
 
302
302
  ---
303
303
 
304
- ## 🖥️ Console Output Preview
304
+ ## 🖥️ Console Output Preview
305
305
 
306
306
  ```
307
- ╔════════════════════════════════════════════════════════╗
308
- ║ ⚔️ AUM-IC Tailwind Killer v4.1.3 ║
309
- ║ Powered by DuckDB • IngCrea ® ║
310
- ╚════════════════════════════════════════════════════════╝
311
-
312
- [✔] PRE-FLIGHT Clean Git branch. Filesystem validated.
313
- [⚡] SCAN Scanning 1,247 files (Piscina Worker Threads: 8)...
314
- [🔎] EXTRACT 48,312 classes detected. Deduplicating...
315
- [🚀] L1 CACHE DuckDB resolved 47,924 classes in O(1) [Hit Rate: 99.2%]
316
- [⚙️] L2 CACHE Local JIT compiled 388 dynamic classes [w-[320px], text-[#FF0000]...]
317
- [🛡️] HASH Deterministic hashes: 48,312 -> 5,840 unique
318
- [💾] OUTPUT aumic-output.css generated (127KB -> 78KB, -39%)
319
- [🔒] LOCK aumic-lock.json written. Rollback available.
320
- [💥] PURGE Tailwind CSS removed from package.json. Freedom!
321
-
322
- ✔ Zero-Bloat transmutation completed in 112ms.
307
+ ╔════════════════════════════════════════════════════════╗
308
+ ║ ⚔️ AUM-IC Tailwind Killer v4.1.3 ║
309
+ ║ Powered by DuckDB • IngCrea ® ║
310
+ ╚════════════════════════════════════════════════════════╝
311
+
312
+ [✔] PRE-FLIGHT Clean Git branch. Filesystem validated.
313
+ [âš¡] SCAN Scanning 1,247 files (Piscina Worker Threads: 8)...
314
+ [🔎] EXTRACT 48,312 classes detected. Deduplicating...
315
+ [🚀] L1 CACHE DuckDB resolved 47,924 classes in O(1) [Hit Rate: 99.2%]
316
+ [⚙️] L2 CACHE Local JIT compiled 388 dynamic classes [w-[320px], text-[#FF0000]...]
317
+ [🛡️] HASH Deterministic hashes: 48,312 -> 5,840 unique
318
+ [💾] OUTPUT aumic-output.css generated (127KB -> 78KB, -39%)
319
+ [🔒] LOCK aumic-lock.json written. Rollback available.
320
+ [💥] PURGE Tailwind CSS removed from package.json. Freedom!
321
+
322
+ ✔ Zero-Bloat transmutation completed in 112ms.
323
323
  ```
324
324
 
325
325
  ---
326
326
 
327
327
 
328
- ## 🧠 Under the Hood: The Engineering
328
+ ## 🧠 Under the Hood: The Engineering
329
+
330
+ ### 🛡️ Zero-Trust Execution (Enterprise Security)
331
+ AUM-IC Tailwind Killer is built under a Zero-Trust security model. All system operations, file manipulation, and background processes are executed isolated from the system shell (strict prohibition of `exec`). This eradicates command injection vectors in SaaS and CI/CD environments, guaranteeing that code analysis is 100% secure even on untrusted repositories.
329
332
 
330
333
  AUM-IC Tailwind Killer is not a simple Regex script. It is a **Safe Static Analysis** tool designed for enterprise-grade monorepos:
331
334
 
@@ -333,22 +336,22 @@ AUM-IC Tailwind Killer is not a simple Regex script. It is a **Safe Static Analy
333
336
  * **Intermediate Bytecode for Semantic Naming:** The hashes you see injected into your code (e.g., `class="aumic-rs-1b3a"`) **are NOT the final output**. They act as an intermediate *bytecode*. AUM-IC offers an **AI Semantic Naming** engine (via Ollama or Claude) that reads your `aumic-lock.json` and automatically translates these hashes into pure, maintainable semantic CSS (e.g., `.dashboard-card`). It is an automated bridge back to traditional CSS.
334
337
  * **Dynamic Classes Management (clsx, twMerge):** If a class cannot be deterministically resolved at compile time (e.g., `<div class={\`bg-${color}-500\`}>`), the static analyzer safely ignores it and flags it in the simulation report for developer review.
335
338
 
336
- ## 🥊 AUM-IC vs Tailwind v4
339
+ ## 🥊 AUM-IC vs Tailwind v4
337
340
 
338
341
  Tailwind v4 introduced monumental improvements in compilation speed (Oxide engine) and CSS-first configuration. So why use AUM-IC?
339
342
 
340
343
  Tailwind v4 solves performance, but it **DOES NOT solve Vendor Lock-in or HTML Soup**.
341
344
  If you use v4, your HTML code remains strictly coupled to a proprietary Domain-Specific Language (DSL). AUM-IC Tailwind Killer does not compete on compilation speed; its sole objective is **Architectural Independence (Zero Vendor Lock-in)**. It returns full control to you via clean, semantic HTML and standard CSS that will outlive any frontend framework trend.
342
345
 
343
- ## ⚠️ Limitations and Ideal Use Cases
346
+ ## ⚠️ Limitations and Ideal Use Cases
344
347
 
345
348
  * **Not recommended for:** Projects highly dependent on fully dynamic classes constructed at runtime (string interpolation) without exhaustive manual auditing. If your project has thousands of runtime logic branches for styles, you will need a gradual migration approach.
346
349
  * **Highly recommended for:** Freezing technical debt, standardizing monorepos, protecting UI Intellectual Property for commercial licensing, and preparing architectures for 10+ year maintenance lifecycles.
347
350
 
348
- ## ❓ FAQ
351
+ ## ❓ FAQ
349
352
 
350
353
  **Does this break Tailwind pseudo-classes like `hover:`, `focus:`, `md:`?**
351
- > No. The AST interceptor detects and preserves responsive and state modifiers. The final hash encapsulates the full selector: `hover:bg-red-500` → `aumic-rs-a3f1` with its `:hover` rule intact in the output CSS.
354
+ > No. The AST interceptor detects and preserves responsive and state modifiers. The final hash encapsulates the full selector: `hover:bg-red-500` → `aumic-rs-a3f1` with its `:hover` rule intact in the output CSS.
352
355
 
353
356
  **Can I use it alongside Tailwind or does it remove it completely?**
354
357
  > In Simulate mode (`-m simulate`), Tailwind is untouched. In Local mode (`-m local`), it is purged from `package.json`. You can revert everything at any time with `-m restore`.
@@ -363,7 +366,7 @@ If you use v4, your HTML code remains strictly coupled to a proprietary Domain-S
363
366
  > Yes. The L1 DuckDB cache contains the compiled dictionary for Tailwind v4 Oxide. The L2 Cache hijacks `@tailwindcss/vite` or the native binary as detected from your `package.json`.
364
367
 
365
368
  **What if I use CSS-in-JS (`styled-components`, `emotion`) without Tailwind?**
366
- > AUM-IC Tailwind Killer processes **Tailwind utility classes** in your component markup. If your project uses CSS-in-JS libraries *without* Tailwind classes in HTML/JSX attributes, there is nothing to transmute — the tool will simply report zero classes found. For **mixed projects** (Tailwind classes in some components + CSS-in-JS in others), AUM-IC processes only the Tailwind parts and leaves CSS-in-JS components completely untouched.
369
+ > AUM-IC Tailwind Killer processes **Tailwind utility classes** in your component markup. If your project uses CSS-in-JS libraries *without* Tailwind classes in HTML/JSX attributes, there is nothing to transmute — the tool will simply report zero classes found. For **mixed projects** (Tailwind classes in some components + CSS-in-JS in others), AUM-IC processes only the Tailwind parts and leaves CSS-in-JS components completely untouched.
367
370
 
368
371
  **What if the migration fails mid-process?**
369
372
  > Phase 1 (Pre-Flight) runs before touching a single file and aborts immediately if it detects uncommitted Git changes, permission issues, or missing dependencies. If a failure occurs after Phase 1 begins writing, every modified file has a `.aumic-bak` backup copy that `--mode restore` uses to recover the exact original state. Your code is always recoverable.
@@ -373,18 +376,18 @@ If you use v4, your HTML code remains strictly coupled to a proprietary Domain-S
373
376
 
374
377
  ---
375
378
 
376
- ## 🗺️ Roadmap
379
+ ## 🗺️ Roadmap
377
380
 
378
381
  | Version | Feature | Status |
379
382
  | :--- | :--- | :---: |
380
- | v4.1.3 | DuckDB L1 Cache · Parallel AST · Rollback · AI Naming | ✅ Stable |
381
- | v4.2.0 | Native Vite plugin · Turbopack integration | 🔄 In development |
382
- | v4.3.0 | Svelte stable · Angular 17+ support | 📋 Planned |
383
- | v5.0.0 | VS Code extension · Web audit dashboard | 📋 Planned |
383
+ | v4.1.3 | DuckDB L1 Cache · Parallel AST · Rollback · AI Naming | ✅ Stable |
384
+ | v4.2.0 | Native Vite plugin · Turbopack integration | 🔄 In development |
385
+ | v4.3.0 | Svelte stable · Angular 17+ support | 📋 Planned |
386
+ | v5.0.0 | VS Code extension · Web audit dashboard | 📋 Planned |
384
387
 
385
388
  ---
386
389
 
387
- ## 🤝 Contributing
390
+ ## 🤝 Contributing
388
391
 
389
392
  Found a bug or want to add support for a new framework? Contributions are welcome.
390
393
 
@@ -399,26 +402,31 @@ For major changes (new modes, new AI providers, new framework support), open an
399
402
 
400
403
  ---
401
404
 
402
- ## 🏢 Enterprise Support & Dual-Licensing
405
+ ## 🏢 Enterprise Support & Dual-Licensing
403
406
 
404
407
  **AUM-IC Tailwind Killer** operates under a **Dual-License Model**:
405
408
 
406
409
  1. **Open Source:** Free under the [AGPL v3 License](./LICENSE) for open source, personal, or non-commercial projects.
407
410
  2. **Commercial:** Proprietary licensing for organizations embedding AUM-IC in closed-source products, SaaS platforms, or internal enterprise workflows. See [LICENSE-COMMERCIAL.md](./LICENSE-COMMERCIAL.md) for details.
408
411
 
409
- For organizations with large-scale monorepos, **INGENIERÍA CREATIVA Y DESARROLLOS TECNOLÓGICOS S.A.S. (IngCrea)** offers:
412
+ For organizations with large-scale monorepos, **INGENIERÍA CREATIVA Y DESARROLLOS TECNOLÓGICOS S.A.S. (IngCrea)** offers:
410
413
 
411
414
  | Service | Description |
412
415
  | :--- | :--- |
413
- | 🔍 **Migration Audit** | Technical assessment, risk identification and transmutation plan for enterprise projects. |
414
- | ⚡ **Managed CI/CD Integration** | AUM-IC configured inside GitHub Actions, GitLab CI or Jenkins pipelines. |
415
- | 🧠 **On-Premise AI Naming** | Ollama deployment with specialized models on client infrastructure. Zero code exposure. |
416
- | 🛡️ **SLA & Priority Support** | Dedicated channel, critical incident resolution in under 4 hours. |
416
+ | 🔍 **Migration Audit** | Technical assessment, risk identification and transmutation plan for enterprise projects. |
417
+ | âš¡ **Managed CI/CD Integration** | AUM-IC configured inside GitHub Actions, GitLab CI or Jenkins pipelines. |
418
+ | 🧠 **On-Premise AI Naming** | Ollama deployment with specialized models on client infrastructure. Zero code exposure. |
419
+ | 🛡️ **SLA & Priority Support** | Dedicated channel, critical incident resolution in under 4 hours. |
417
420
 
418
- > ### 📧 Enterprise Contact
421
+ > ### 📧 Enterprise Contact
419
422
  > **contacto@ingcrea.com** &nbsp;|&nbsp; [ingcrea.com](https://ingcrea.com)
420
423
  > *Response within 24 business hours.*
421
424
 
422
425
  ---
423
426
 
424
- > Developed under the technological standard of **INGENIERÍA CREATIVA Y DESARROLLOS TECNOLÓGICOS S.A.S.** Excellence, Determinism and Zero-Trust.
427
+ > Developed under the technological standard of **INGENIERÍA CREATIVA Y DESARROLLOS TECNOLÓGICOS S.A.S.** Excellence, Determinism and Zero-Trust.
428
+
429
+ ### 🛡️ Seguridad Zero-Trust y Arquitectura AUM-IC (v4.1.5)
430
+ A partir de la versión 4.1.5, el compilador AUM-IC Tailwind Killer ha sido reescrito desde cero utilizando nuestra propia **Arquitectura Cósmica AUM-IC (Átomos a Galaxias)**.
431
+ - **Desintegración del Monolito:** El núcleo ha sido purificado en 6 capas de abstracción (Átomos, Moléculas, Células, Organismos, Ecosistemas y Galaxias), promoviendo mantenibilidad y separación de responsabilidades a niveles fractales.
432
+ - **Modelo de Ejecución Zero-Trust:** Hemos erradicado TODAS las instancias de child_process.exec y execSync. Ahora, toda ejecución nativa opera estrictamente bajo spawn/spawnSync puro, pasando los argumentos como arreglos inmutables y deshabilitando intérpretes de shell. Esto cierra definitivamente cualquier vector de Command Injection (OWASP A03:2021) en la herramienta. AUM-IC es intrínsecamente seguro por diseño.
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ /**
3
+ * [EN] Immutable constants that form the AUM-IC transmutation vocabulary.
4
+ * [ES] Constantes inmutables que forman el vocabulario de transmutación AUM-IC.
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.LEVEL_PREFIX = exports.COMPONENT_ALIASES = exports.TAILWIND_SNIPER_REGEX = void 0;
8
+ /** [EN] O(n) pre-filter: quickly confirms Tailwind presence before invoking the Babel AST pipeline. [ES] Pre-filtro O(n): confirma rápidamente la presencia de Tailwind antes de invocar el pipeline AST Babel. */
9
+ exports.TAILWIND_SNIPER_REGEX = /(class(Name)?=|className:|\b(sm:|md:|lg:|xl:|2xl:|hover:|focus:|active:|disabled:|dark:|flex\b|grid\b|block\b|hidden\b|absolute\b|relative\b|bg-[a-z]+-\d{1,3}|text-[a-z]+-\d{1,3}|p[xytrbl]?-\d|m[xytrbl]?-\d|w-\d|h-\d|gap-\d|border|rounded|shadow|z-\d0|opacity-\d{2}|leading-|tracking-)|@apply|@tailwind)/;
10
+ /** [EN] Maps component file names to AUM-IC abbreviated identifiers for class generation. [ES] Mapea nombres de archivo de componentes a identificadores abreviados AUM-IC para la generación de clases. */
11
+ exports.COMPONENT_ALIASES = {
12
+ button: 'btn', icon: 'icon', input: 'input', badge: 'badge',
13
+ link: 'link', label: 'lbl', card: 'card', form: 'form',
14
+ dropdown: 'drop', menu: 'menu', list: 'list', modal: 'modal',
15
+ header: 'header', footer: 'footer', sidebar: 'sidebar', hero: 'hero',
16
+ table: 'table', nav: 'nav', main: 'main', section: 'section',
17
+ article: 'article', page: 'page', layout: 'layout', index: 'page',
18
+ pricing: 'pricing', trust: 'trust', features: 'features', ecosystem: 'eco',
19
+ teaser: 'teaser', banner: 'banner', toast: 'toast', chip: 'chip',
20
+ avatar: 'avatar', tag: 'tag',
21
+ };
22
+ /** [EN] Maps AUM-IC structural categories to their class name prefixes. [ES] Mapea categorías estructurales AUM-IC a sus prefijos de nombre de clase. */
23
+ exports.LEVEL_PREFIX = {
24
+ atoms: 'atom', molecules: 'molecule', organisms: 'organism',
25
+ ecosystems: 'ecosystem', galaxies: 'galaxy',
26
+ };
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getHash = getHash;
7
+ exports.escapeCssSelector = escapeCssSelector;
8
+ const crypto_1 = __importDefault(require("crypto"));
9
+ /**
10
+ * [EN] Deterministic 6-char hex hash for reproducible AUM-IC class identifiers.
11
+ * [ES] Hash hex determinista de 6 chars para identificadores de clase AUM-IC reproducibles.
12
+ */
13
+ function getHash(str) {
14
+ return crypto_1.default.createHash('shake256', { outputLength: 3 }).update(str).digest('hex');
15
+ }
16
+ /**
17
+ * [EN] Escapes a string for safe use as a CSS class selector.
18
+ * [ES] Escapa un string para uso seguro como selector de clase CSS.
19
+ */
20
+ function escapeCssSelector(className) {
21
+ return className.replace(/[^a-zA-Z0-9_-]/g, '\\$&');
22
+ }
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ /**
3
+ * [EN] Core type definitions — the most primitive building blocks.
4
+ * [ES] Definiciones de tipos fundamentales — los bloques de construcción más primitivos.
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.classifyComponent = classifyComponent;
7
+ /**
8
+ * [EN] Component classifier: maps a file name to its AUM-IC structural tier.
9
+ * [ES] Clasificador de componentes: mapea un nombre de archivo a su nivel estructural AUM-IC.
10
+ */
11
+ const path_1 = __importDefault(require("path"));
12
+ const constants_1 = require("../1_atoms/constants");
13
+ /** [EN] Classifies a file into its AUM-IC tier using alias lookup then regex patterns. [ES] Clasifica un archivo en su nivel AUM-IC usando búsqueda de alias y luego patrones regex. */
14
+ function classifyComponent(fileName) {
15
+ const name = path_1.default.basename(fileName, path_1.default.extname(fileName)).toLowerCase();
16
+ if (constants_1.COMPONENT_ALIASES[name]) {
17
+ const comp = constants_1.COMPONENT_ALIASES[name];
18
+ if (/(button|icon|input|badge|link|label)/.test(name))
19
+ return { category: 'atoms', component: comp };
20
+ if (/(card|form|dropdown|menu|list|modal)/.test(name))
21
+ return { category: 'molecules', component: comp };
22
+ if (/(header|footer|sidebar|hero|table|nav)/.test(name))
23
+ return { category: 'organisms', component: comp };
24
+ return { category: 'ecosystems', component: comp };
25
+ }
26
+ const comp = name.replace(/[^a-z0-9]/g, '').slice(0, 8) || 'comp';
27
+ if (/(button|btn|icon|input|badge|link|label|chip|tag|avatar)/.test(name))
28
+ return { category: 'atoms', component: comp };
29
+ if (/(card|form|dropdown|drop|menu|list|modal|toast|banner)/.test(name))
30
+ return { category: 'molecules', component: comp };
31
+ if (/(header|footer|sidebar|hero|table|nav|pricing|trust|features|teaser|rmm|cta)/.test(name))
32
+ return { category: 'organisms', component: comp };
33
+ if (/(main|section|article|page|layout|index)/.test(name))
34
+ return { category: 'ecosystems', component: comp };
35
+ if (/(app|root|core|galaxy|global|provider)/.test(name))
36
+ return { category: 'galaxies', component: comp };
37
+ return { category: 'molecules', component: comp };
38
+ }
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runConcurrent = runConcurrent;
4
+ /**
5
+ * [EN] Bounded concurrent task runner. Processes items in parallel up to the configured worker limit.
6
+ * [ES] Ejecutor de tareas concurrentes acotado. Procesa ítems en paralelo hasta el límite configurado.
7
+ */
8
+ async function runConcurrent(items, concurrency, task) {
9
+ const results = [];
10
+ const iterator = items.entries();
11
+ const workers = Array(concurrency).fill(iterator).map(async (iter) => {
12
+ for (const [index, item] of iter) {
13
+ results[index] = await task(item);
14
+ }
15
+ });
16
+ await Promise.all(workers);
17
+ return results;
18
+ }