svger-cli 2.0.7 → 2.0.8

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.
Files changed (3) hide show
  1. package/CHANGELOG.md +101 -10
  2. package/README.md +51 -14
  3. package/package.json +2 -3
package/CHANGELOG.md CHANGED
@@ -78,6 +78,74 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
78
78
  - Enhanced comparison tables and installation instructions
79
79
  - Included recent fixes section with technical details
80
80
 
81
+ ## [Unreleased] - 2025-11-12
82
+
83
+ ### Added
84
+ - Comprehensive performance analysis documentation with detailed technical breakdown
85
+ - Professional competitive analysis with fair tool comparisons
86
+ - Transparency section welcoming community feedback
87
+ - Use case recommendations for each tool in the ecosystem
88
+ - Detailed methodology for performance claims and benchmarking
89
+ - Research sources and feedback channels for documentation accuracy
90
+
91
+ ### Changed
92
+ - Corrected SVGR description to acknowledge webpack ecosystem support (not React-only)
93
+ - Clarified 85% performance improvement claim with proper context and scope
94
+ - Enhanced "Advanced Props" definition vs standard SVG props
95
+ - Improved competitive analysis to be fair, accurate, and professional
96
+ - Removed misleading bundle size comparisons (dev dependencies vs runtime)
97
+ - Updated documentation tone to be educational rather than competitive
98
+
99
+ ### Fixed
100
+ - Inaccurate claims about competitor tools' capabilities
101
+ - Misleading performance comparisons without proper context
102
+ - Unprofessional competitive analysis language
103
+ - Missing disclaimers and acknowledgments for ecosystem tools
104
+
105
+ ## [2.0.5] - 2025-11-11
106
+
107
+ ### Fixed
108
+ - **CRITICAL**: PascalCase component naming preservation
109
+ - Fixed issue where PascalCase filenames were incorrectly converted to lowercase
110
+ - ArrowBendDownLeft.svg → ArrowBendDownLeft.tsx (was: Arrowbenddownleft.tsx)
111
+ - MyCustomIcon.svg → MyCustomIcon.tsx (was: Mycustomicon.tsx)
112
+ - Enhanced regex pattern in toPascalCase() to properly detect existing PascalCase
113
+ - Maintained compatibility with all existing functionality
114
+ - All 28 framework tests continue passing
115
+
116
+ ### Changed
117
+ - Updated package version to 2.0.5
118
+ - Enhanced toPascalCase utility function for better case detection
119
+
120
+ ## [2.0.4] - 2025-11-11
121
+
122
+ ### Added
123
+ - Complete 28-property configuration schema
124
+ - React/Vue/Angular specific configuration options
125
+ - Enhanced responsive design support with breakpoint configurations
126
+ - Comprehensive theme system with multiple design systems support
127
+ - Advanced performance optimization settings
128
+ - Professional error handling and validation system
129
+ - Enhanced TypeScript support with improved type definitions
130
+
131
+ ### Changed
132
+ - Streamlined ESLint configuration (.eslintrc.js → .eslintrc.cjs)
133
+ - Enhanced component templates with new configuration support
134
+ - Improved configuration management across multiple files
135
+ - Updated README.md with comprehensive v2.0.4 feature documentation
136
+ - Enhanced comparison tables and installation instructions
137
+
138
+ ### Fixed
139
+ - TypeScript duplicate export errors in index generation
140
+ - Simplified index.ts generation to prevent conflicts
141
+ - Improved configuration validation and error messages
142
+ - Enhanced toPascalCase to preserve existing PascalCase names
143
+
144
+ ### Removed
145
+ - Redundant test documentation files (COMPLETE-TEST-REPORT.md, TEST-RESULTS.md, TESTING-SUMMARY.md)
146
+ - Deprecated ESLint configuration format
147
+ - Outdated package dependencies reducing bundle size
148
+
81
149
  ## [2.0.3] - 2024-11-11
82
150
 
83
151
  ### Added
@@ -89,6 +157,7 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
89
157
  - Comprehensive export map for better module resolution
90
158
  - Development scripts for testing, linting, and formatting
91
159
  - Documentation generation scripts
160
+ - Comprehensive testing suite with unified export pattern
92
161
 
93
162
  ### Changed
94
163
 
@@ -103,29 +172,51 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
103
172
  - Package metadata completeness
104
173
  - Export definitions for better tree-shaking
105
174
  - Module resolution issues
175
+ - Native module file path resolution error
176
+
177
+ ### Removed
178
+ - Unnecessary test folders and configuration files
179
+ - Redundant package configurations
106
180
 
107
181
  ## [2.0.2] - 2024-11-01
108
182
 
109
183
  ### Added
110
184
 
111
185
  - Multi-framework support (React, Vue, Angular, Svelte, Solid, Lit, Preact, Vanilla)
112
- - Auto-generated index.ts exports
113
- - Responsive design system
114
- - Theme support (light/dark/auto)
115
- - File locking mechanism
116
- - Performance optimization engine
186
+ - Auto-generated index.ts exports with tree-shaking support
187
+ - Responsive design system with breakpoint configurations
188
+ - Theme support (light/dark/auto) with CSS variables
189
+ - File locking mechanism for protecting critical files
190
+ - Performance optimization engine with parallel processing
117
191
 
118
192
  ### Changed
119
193
 
120
194
  - Complete rewrite for enterprise-grade performance
121
- - Zero-dependency architecture
122
- - 85% performance improvement over SVGR
123
- - TypeScript-first approach
195
+ - Zero-dependency architecture implementation
196
+ - 85% performance improvement over traditional tools (SVG processing time)
197
+ - TypeScript-first approach with native type generation
124
198
 
125
199
  ### Removed
126
-
127
- - Legacy dependencies
200
+ - Legacy dependencies reducing package size by 89%
128
201
  - Single-framework limitation
202
+ - Dependency-heavy build processes
203
+
204
+ ## [2.0.0] - 2024-10-30
205
+
206
+ ### Added
207
+ - Complete multi-framework support for all 8 UI frameworks
208
+ - Enhanced CLI commands with comprehensive options
209
+ - Open source project files (CODE_OF_CONDUCT, LICENSE, CONTRIBUTING)
210
+ - Professional project structure and documentation
211
+
212
+ ### Changed
213
+ - Major version release with breaking changes from 1.x
214
+ - Enhanced README with multi-framework guide and benchmarks
215
+ - Consolidated project structure and test organization
216
+
217
+ ### Removed
218
+ - node_modules folder from repository
219
+ - Legacy 1.x architecture and dependencies
129
220
 
130
221
  ## [1.x.x] - Legacy Versions
131
222
 
package/README.md CHANGED
@@ -101,34 +101,41 @@
101
101
 
102
102
  ### **✨ Auto-Generated index.ts Exports (Enhanced)**
103
103
 
104
- Automatically generates clean index.ts files with **unified export pattern** for maximum
105
- flexibility:
104
+ Automatically generates clean index.ts files with a **single, consistent export pattern** that
105
+ avoids naming conflicts:
106
106
 
107
107
  ```typescript
108
108
  // Auto-generated in your output directory
109
- // Named exports for tree-shaking
109
+ // Re-exports with renamed defaults for tree-shaking
110
110
  export { default as ArrowLeft } from './ArrowLeft';
111
111
  export { default as ArrowRight } from './ArrowRight';
112
+ export { default as HomeIcon } from './HomeIcon';
113
+ export { default as UserProfile } from './UserProfile';
112
114
 
113
- // Grouped named exports
114
- export { ArrowLeft, ArrowRight };
115
-
116
- // Default export for convenience
117
- export default { ArrowLeft, ArrowRight };
115
+ /**
116
+ * SVG Components Index
117
+ * Generated by svger-cli
118
+ *
119
+ * Import individual components:
120
+ * import { ArrowLeft } from './components';
121
+ *
122
+ * Import all components:
123
+ * import * as Icons from './components';
124
+ */
118
125
  ```
119
126
 
120
127
  **Import flexibility:**
121
128
 
122
129
  ```typescript
123
- // Named imports (tree-shaking friendly)
124
- import { ArrowLeft, ArrowRight } from './components';
130
+ // Named imports (recommended - tree-shaking friendly)
131
+ import { ArrowLeft, ArrowRight, HomeIcon } from './components';
125
132
 
126
- // Namespace import
133
+ // Namespace import (for accessing all icons)
127
134
  import * as Icons from './components';
135
+ const ArrowIcon = Icons.ArrowLeft;
128
136
 
129
- // Default import
130
- import Icons from './components';
131
- const { ArrowLeft } = Icons;
137
+ // Individual file imports (when you need just one component)
138
+ import ArrowLeft from './components/ArrowLeft';
132
139
  ```
133
140
 
134
141
  ### **🎯 Enhanced Props & Styling**
@@ -151,6 +158,11 @@ svger-cli lock ./icons/critical-logo.svg # Protects during all operations
151
158
 
152
159
  ## 📊 **Feature Comparison Matrix**
153
160
 
161
+ > 📖 **For detailed technical analysis and documented benchmarks:**
162
+ > **[→ Read Complete Performance Deep Dive (COMPARISON.md)](./COMPARISON.md)**
163
+ > Includes: Benchmark methodology, dependency analysis, Webpack integration guide, and all 28
164
+ > configuration options explained.
165
+
154
166
  | **Feature** | **SVGER-CLI v2.0.7** | **SVGR (React)** | **vite-svg-loader (Vue)** | **svelte-svg (Svelte)** | **SVGO** |
155
167
  | -------------------------- | -------------------------- | ---------------- | ------------------------- | ----------------------- | ------------------- |
156
168
  | **Dependencies** | ✅ **Zero** | ❌ 15+ deps | ❌ 9+ deps | ❌ 7+ deps | ❌ 8+ deps |
@@ -185,6 +197,19 @@ engineered from the ground up with a single philosophy: **native, zero-dependenc
185
197
  This lean approach delivers up to **85% faster processing** and a **90% smaller bundle size**
186
198
  compared to alternatives that rely on dozens of transitive dependencies.
187
199
 
200
+ > 📖 **Want to understand why it's faster?** Read the complete technical analysis with benchmarks,
201
+ > methodology, and measurements:
202
+ > **[→ View Performance Deep Dive & Benchmarks (COMPARISON.md)](./COMPARISON.md)**
203
+ >
204
+ > Learn about:
205
+ >
206
+ > - Detailed benchmark methodology and test environment
207
+ > - 4 architectural optimizations that deliver 85% improvement
208
+ > - Memory usage comparison (12MB vs 68MB)
209
+ > - Parallel processing performance (6.6x throughput)
210
+ > - Smart caching system (99% hit rate)
211
+ > - Real-world CI/CD impact and cost savings
212
+
188
213
  ---
189
214
 
190
215
  ## 📦 **Installation**
@@ -2338,3 +2363,15 @@ instrumental in shaping the design and functionality of the SVGER-CLI v2.0.
2338
2363
  ---
2339
2364
 
2340
2365
  **© 2025 SVGER-CLI Development Team. Built with ❤️ for the developer community.**
2366
+
2367
+ ---
2368
+
2369
+ ## 📚 **Additional Documentation**
2370
+
2371
+ - **[📊 Complete Feature Comparison & Benchmarks](./COMPARISON.md)** - Detailed technical analysis
2372
+ with documented performance claims
2373
+ - Benchmark methodology and test environment
2374
+ - Detailed dependency tree analysis
2375
+ - Webpack integration guide
2376
+ - Complete configuration options breakdown
2377
+ - Real-world performance examples
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "svger-cli",
3
- "version": "2.0.7",
3
+ "version": "2.0.8",
4
4
  "description": "Enterprise-grade, zero-dependency SVG to component converter supporting React, React Native, Vue, Angular, Svelte, Solid, Lit, Preact & Vanilla. Features auto-generated TypeScript exports, responsive design, themes, performance optimization & 85% faster processing than SVGR.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -131,10 +131,9 @@
131
131
  }
132
132
  ],
133
133
  "license": "MIT",
134
- "dependencies": {},
135
134
  "devDependencies": {
136
135
  "@types/jest": "^29.5.12",
137
- "@types/node": "^24.9.2",
136
+ "@types/node": "^24.10.1",
138
137
  "@typescript-eslint/eslint-plugin": "^7.18.0",
139
138
  "@typescript-eslint/parser": "^7.18.0",
140
139
  "eslint": "^8.57.1",