diff --git a/scripts/icon-converter.js b/scripts/icon-converter.js
new file mode 100644
index 0000000..bf5bf68
--- /dev/null
+++ b/scripts/icon-converter.js
@@ -0,0 +1,53 @@
+#!/usr/bin/env node
+/**
+ * Usage: node convert-svg-to-svelte.js [inputDir] [outputDir]
+ * Defaults: ./svgs ./svelte
+ */
+import fs from 'fs';
+import path from 'path';
+
+const INPUT_DIR = process.argv[2] || '../svgs';
+const OUTPUT_DIR = process.argv[3] || '../src/lib/icons';
+
+if (!fs.existsSync(OUTPUT_DIR)) fs.mkdirSync(OUTPUT_DIR, { recursive: true });
+
+function processSvg(svgContent) {
+ // Strip XML/DOCTYPE
+ let out = svgContent.replace(/<\?xml[\s\S]*?\?>\s*/i, '').replace(/\s*/i, '');
+
+ // Remove ALL comments
+ out = out.replace(/\s*/g, '');
+
+ // Remove with any whitespace between tags
+ out = out.replace(/\s*<\/g>\s*/gi, '');
+
+ // Ensure only width="100%" height="100%" on the