diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..ca85bae
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,14 @@
+# Installed npm modules
+node_modules
+
+# Folder view configuration files
+.DS_Store
+Desktop.ini
+
+# Thumbnail cache files
+._*
+Thumbs.db
+
+# Files that might appear on external disks
+.Spotlight-V100
+.Trashes
diff --git a/build-passed.svg b/build-passed.svg
index a632076..28980f9 100644
--- a/build-passed.svg
+++ b/build-passed.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/make.js b/make.js
index bf312ad..ba84375 100644
--- a/make.js
+++ b/make.js
@@ -1,5 +1,6 @@
var fs = require('fs');
var dot = require('dot');
+var SVGO = require('svgo');
var badges = require('./badges.json');
var template = fs.readFileSync('./template.svg');
var imageTemplate = dot.template(''+template);
@@ -9,12 +10,21 @@ var imageTemplate = dot.template(''+template);
var imageSheet = './sheet.html';
var resultSheet = '';
+function optimize(string, callback) {
+ var svgo = new SVGO();
+ svgo.optimize(string, callback);
+}
+
function makeImage(name, data) {
var result = imageTemplate(data);
- // Put this image on the sheet.
- resultSheet += result;
- // Write the image individually.
- fs.writeFileSync(name + '.svg', result);
+ // Run the SVG through SVGO.
+ optimize(result, function(object) {
+ var result = object.data;
+ // Put this image on the sheet.
+ resultSheet += result;
+ // Write the image individually.
+ fs.writeFileSync(name + '.svg', result);
+ });
}
function buildImages() {
diff --git a/package.json b/package.json
index 1f5fe3e..18f9d16 100644
--- a/package.json
+++ b/package.json
@@ -9,6 +9,7 @@
},
"license": "CC0",
"dependencies": {
- "dot": ">=1.0.2"
+ "dot": ">=1.0.2",
+ "svgo": "~0.4.2"
}
}
diff --git a/sheet.html b/sheet.html
index a632076..28980f9 100644
--- a/sheet.html
+++ b/sheet.html
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file