diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 00000000..854a651b --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,13 @@ +name: "Automated releases" +on: + schedule: + # "At 00:00 on Sunday" (https://crontab.guru/once-a-week) + - cron: "0 0 * * 0" + +jobs: + release: + runs-on: ubuntu-latest + steps: + - uses: simple-icons/release-action@master + with: + repo-token: "${{ secrets.GITHUB_TOKEN }}" diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 438a380d..7681015e 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -65,7 +65,9 @@ There are many different tools for editing SVG files, some options include: Using your preferred tool you should: -1. Isolate the icon from any text or extraneous items. Please also make sure that there are no overlapping paths by merging them. +1. Isolate the icon from any text or extraneous items. +1. Merge any overlapping paths. +1. Compound all paths into one. 1. Change the icon's viewbox/canvas/page size to 24x24. 1. Scale the icon to fit the viewbox, while preserving the icon's original proportions. This means the icon should be touching at least two sides of the viewbox. 1. Center the icon horizontally and vertically. diff --git a/README.md b/README.md index d3313c1e..a9dd3312 100644 --- a/README.md +++ b/README.md @@ -15,20 +15,22 @@ Icons can be downloaded as SVGs directly from [our website](https://simpleicons. ### CDN Usage -Icons can be served from a CDN such as [JSDelivr](https://www.jsdelivr.com/package/npm/simple-icons) or [Unpkg](https://unpkg.com). Simply use the `simple-icons` npm package and specify a version in the URL like the following: +Icons can be served from a CDN such as [JSDelivr](https://www.jsdelivr.com/package/npm/simple-icons) or [Unpkg](https://unpkg.com/browse/simple-icons/). Simply use the `simple-icons` npm package and specify a version in the URL like the following: ```html - - + + ``` Where `[ICON NAME]` is replaced by the icon name, for example: ```html - - + + ``` +These examples use the latest major version. This means you won't receive any updates following the next major release. You can use `@latest` instead to receive updates indefinitely. However, this will result in a `404` error if the icon is removed. + ### Node Usage The icons are also available through our npm package. To install, simply run: diff --git a/_data/simple-icons.json b/_data/simple-icons.json index 77182e81..d4bccb25 100644 --- a/_data/simple-icons.json +++ b/_data/simple-icons.json @@ -485,6 +485,11 @@ "hex": "000000", "source": "https://commons.wikimedia.org/wiki/File:AppleTV.svg" }, + { + "title": "AppSignal", + "hex": "21375A", + "source": "https://appsignal.com/" + }, { "title": "AppVeyor", "hex": "00B3E0", @@ -545,6 +550,11 @@ "hex": "DB3552", "source": "https://ask.fm/" }, + { + "title": "ASUS", + "hex": "000000", + "source": "https://www.asus.com/" + }, { "title": "AT&T", "hex": "00A8E0", @@ -725,6 +735,11 @@ "hex": "004A9D", "source": "https://commons.wikimedia.org/wiki/File:Beijing_Subway_logo.svg" }, + { + "title": "Bentley", + "hex": "333333", + "source": "https://en.wikipedia.org/wiki/File:Bentley_logo.svg" + }, { "title": "Big Cartel", "hex": "222222", @@ -860,6 +875,11 @@ "hex": "CC092F", "source": "https://en.wikipedia.org/wiki/Broadcom_Inc" }, + { + "title": "BT", + "hex": "6400AA", + "source": "https://www.bt.com/" + }, { "title": "Buddy", "hex": "1A86FD", @@ -1000,6 +1020,11 @@ "hex": "117ACA", "source": "https://commons.wikimedia.org/wiki/File:Chase_logo_2007.svg" }, + { + "title": "Checkmarx", + "hex": "54B848", + "source": "https://www.checkmarx.com/resources/datasheets/" + }, { "title": "Chef", "hex": "F09820", @@ -1120,6 +1145,11 @@ "hex": "EE3322", "source": "https://github.com/CocoaPods/shared_resources" }, + { + "title": "Coda", + "hex": "F46A54", + "source": "https://coda.io/" + }, { "title": "Codacy", "hex": "222F29", @@ -1925,6 +1955,11 @@ "hex": "000000", "source": "http://flask.pocoo.org/community/logos/" }, + { + "title": "Flathub", + "hex": "4A86CF", + "source": "https://flathub.org/" + }, { "title": "Flattr", "hex": "000000", @@ -2095,6 +2130,11 @@ "hex": "738A94", "source": "https://ghost.org/design" }, + { + "title": "Ghostery", + "hex": "00BAF2", + "source": "https://www.ghostery.com/" + }, { "title": "GIMP", "hex": "5C5543", @@ -2200,6 +2240,11 @@ "hex": "478CBF", "source": "https://godotengine.org/themes/godotengine/assets/download/godot_logo.svg" }, + { + "title": "GoFundMe", + "hex": "00B964", + "source": "https://www.gofundme.com/" + }, { "title": "GOG.com", "hex": "86328A", @@ -2435,6 +2480,11 @@ "hex": "FBA919", "source": "https://github.com/gruntjs/gruntjs.com/tree/master/src/media" }, + { + "title": "Guangzhou Metro", + "hex": "C51935", + "source": "https://commons.wikimedia.org/wiki/File:Guangzhou_Metro_logo.svg" + }, { "title": "Gulp", "hex": "DA4648", @@ -2995,6 +3045,11 @@ "hex": "000000", "source": "https://www.foundry.com/products/katana" }, + { + "title": "KDE", + "hex": "1D99F3", + "source": "https://kde.org/stuff/clipart.php" + }, { "title": "KeePassXC", "hex": "6CAC4D", @@ -3085,6 +3140,11 @@ "hex": "00B057", "source": "https://koding.com/About" }, + { + "title": "Kofax", + "hex": "00558C", + "source": "https://www.kofax.com/styleguide/logos" + }, { "title": "Kotlin", "hex": "0095D5", @@ -3515,6 +3575,11 @@ "hex": "DE4F4F", "source": "http://logo.meteorapp.com/" }, + { + "title": "Métro de Paris", + "hex": "003E95", + "source": "https://www.ratp.fr/" + }, { "title": "micro:bit", "hex": "00ED00", @@ -3665,6 +3730,11 @@ "hex": "DB1F29", "source": "https://www.mojang.com/" }, + { + "title": "Moleculer", + "hex": "3CAFCE", + "source": "https://moleculer.services/" + }, { "title": "Monero", "hex": "FF6600", @@ -3700,6 +3770,11 @@ "hex": "00945E", "source": "https://www.moo.com/uk/about/press.html" }, + { + "title": "Moscow Metro", + "hex": "D9232E", + "source": "https://mosmetro.ru/" + }, { "title": "Mozilla", "hex": "000000", @@ -3720,6 +3795,11 @@ "hex": "0039A6", "source": "https://mta.info/" }, + { + "title": "MTR", + "hex": "AC2E45", + "source": "https://commons.wikimedia.org/wiki/File:MTR_(logo_with_text).svg" + }, { "title": "MuseScore", "hex": "1A70B8", @@ -4085,6 +4165,11 @@ "hex": "212121", "source": "https://pagekit.com/logo-guide" }, + { + "title": "PagerDuty", + "hex": "06AC38", + "source": "https://www.pagerduty.com/brand/" + }, { "title": "PagSeguro", "hex": "FFC801", @@ -4215,6 +4300,11 @@ "hex": "517A9E", "source": "https://www.pivotaltracker.com/branding-guidelines" }, + { + "title": "Piwigo", + "hex": "FF7700", + "source": "https://github.com/Piwigo/piwigodotorg/blob/6edb840c16257314caec770a9a51f67ef81836e4/images/piwigo.org.svg" + }, { "title": "Pixabay", "hex": "2EC66D", @@ -4355,6 +4445,16 @@ "hex": "50FA7B", "source": "https://github.com/liyasthomas/postwoman" }, + { + "title": "Power BI", + "hex": "F2C811", + "source": "https://powerbi.microsoft.com/en-us/" + }, + { + "title": "POWERS", + "hex": "D21F3C", + "source": "https://www.powerswhiskey.com/" + }, { "title": "PowerShell", "hex": "5391FE", @@ -4665,6 +4765,16 @@ "hex": "00CCBB", "source": "https://c5.rgstatic.net/m/428059296771819/images/favicon/favicon.svg" }, + { + "title": "RetroArch", + "hex": "000000", + "source": "https://github.com/libretro/RetroArch/blob/b01aabf7d1f025999ad0f7812e6e6816d011e631/media/retroarch.svg" + }, + { + "title": "RetroPie", + "hex": "CC0000", + "source": "https://github.com/RetroPie/RetroPie-Docs/blob/c4e882bd2c9d740c591ff346e07a4a4cb536ca93/images/logo.svg" + }, { "title": "ReverbNation", "hex": "E43526", @@ -4885,6 +4995,11 @@ "hex": "FD5750", "source": "https://serverless.com/" }, + { + "title": "Shanghai Metro", + "hex": "EC1C24", + "source": "https://en.wikipedia.org/wiki/File:Shanghai_Metro_Full_Logo.svg" + }, { "title": "Shazam", "hex": "0088FF", @@ -5650,6 +5765,11 @@ "hex": "303030", "source": "https://tio.run/" }, + { + "title": "TUI", + "hex": "70CBF4", + "source": "https://www.tuiholidays.ie/" + }, { "title": "Tumblr", "hex": "36465D", @@ -5780,6 +5900,11 @@ "hex": "3930D8", "source": "https://www.uplabs.com/" }, + { + "title": "Uploaded", + "hex": "0E70CB", + "source": "https://www.uploaded.net" + }, { "title": "Upwork", "hex": "6FDA44", diff --git a/icons/appsignal.svg b/icons/appsignal.svg new file mode 100644 index 00000000..b3c0f462 --- /dev/null +++ b/icons/appsignal.svg @@ -0,0 +1 @@ +AppSignal icon \ No newline at end of file diff --git a/icons/asus.svg b/icons/asus.svg new file mode 100644 index 00000000..7227c2dd --- /dev/null +++ b/icons/asus.svg @@ -0,0 +1 @@ +ASUS icon \ No newline at end of file diff --git a/icons/bentley.svg b/icons/bentley.svg new file mode 100644 index 00000000..cbbe29b1 --- /dev/null +++ b/icons/bentley.svg @@ -0,0 +1 @@ +Bentley icon \ No newline at end of file diff --git a/icons/bt.svg b/icons/bt.svg new file mode 100644 index 00000000..c94a6e46 --- /dev/null +++ b/icons/bt.svg @@ -0,0 +1 @@ +BT icon \ No newline at end of file diff --git a/icons/checkmarx.svg b/icons/checkmarx.svg new file mode 100644 index 00000000..48df0fdd --- /dev/null +++ b/icons/checkmarx.svg @@ -0,0 +1 @@ +Checkmarx icon \ No newline at end of file diff --git a/icons/coda.svg b/icons/coda.svg new file mode 100644 index 00000000..ff916e60 --- /dev/null +++ b/icons/coda.svg @@ -0,0 +1 @@ +Coda icon \ No newline at end of file diff --git a/icons/flathub.svg b/icons/flathub.svg new file mode 100644 index 00000000..1efc9b09 --- /dev/null +++ b/icons/flathub.svg @@ -0,0 +1 @@ +Flathub icon diff --git a/icons/ghostery.svg b/icons/ghostery.svg new file mode 100644 index 00000000..04160fcb --- /dev/null +++ b/icons/ghostery.svg @@ -0,0 +1 @@ +Ghostery icon \ No newline at end of file diff --git a/icons/gofundme.svg b/icons/gofundme.svg new file mode 100644 index 00000000..99e50574 --- /dev/null +++ b/icons/gofundme.svg @@ -0,0 +1 @@ +GoFundMe icon \ No newline at end of file diff --git a/icons/guangzhoumetro.svg b/icons/guangzhoumetro.svg new file mode 100644 index 00000000..e47a6b5f --- /dev/null +++ b/icons/guangzhoumetro.svg @@ -0,0 +1 @@ +Guangzhou Metro icon \ No newline at end of file diff --git a/icons/kde.svg b/icons/kde.svg new file mode 100644 index 00000000..306db765 --- /dev/null +++ b/icons/kde.svg @@ -0,0 +1 @@ +KDE icon \ No newline at end of file diff --git a/icons/kofax.svg b/icons/kofax.svg new file mode 100644 index 00000000..782fd84f --- /dev/null +++ b/icons/kofax.svg @@ -0,0 +1 @@ +Kofax icon \ No newline at end of file diff --git a/icons/metrodeparis.svg b/icons/metrodeparis.svg new file mode 100644 index 00000000..0fcf8690 --- /dev/null +++ b/icons/metrodeparis.svg @@ -0,0 +1 @@ +Métro de Paris icon \ No newline at end of file diff --git a/icons/moleculer.svg b/icons/moleculer.svg new file mode 100644 index 00000000..d1b12bd7 --- /dev/null +++ b/icons/moleculer.svg @@ -0,0 +1 @@ +Moleculer icon \ No newline at end of file diff --git a/icons/moscowmetro.svg b/icons/moscowmetro.svg new file mode 100644 index 00000000..86ce57fa --- /dev/null +++ b/icons/moscowmetro.svg @@ -0,0 +1 @@ +Moscow Metro icon \ No newline at end of file diff --git a/icons/mtr.svg b/icons/mtr.svg new file mode 100644 index 00000000..2938717d --- /dev/null +++ b/icons/mtr.svg @@ -0,0 +1 @@ +MTR icon \ No newline at end of file diff --git a/icons/pagerduty.svg b/icons/pagerduty.svg new file mode 100644 index 00000000..e28e95d4 --- /dev/null +++ b/icons/pagerduty.svg @@ -0,0 +1 @@ +PagerDuty icon \ No newline at end of file diff --git a/icons/piwigo.svg b/icons/piwigo.svg new file mode 100644 index 00000000..61935738 --- /dev/null +++ b/icons/piwigo.svg @@ -0,0 +1 @@ +Piwigo icon diff --git a/icons/powerbi.svg b/icons/powerbi.svg new file mode 100644 index 00000000..f750ee78 --- /dev/null +++ b/icons/powerbi.svg @@ -0,0 +1 @@ +Power BI icon \ No newline at end of file diff --git a/icons/powers.svg b/icons/powers.svg new file mode 100644 index 00000000..baf25520 --- /dev/null +++ b/icons/powers.svg @@ -0,0 +1 @@ +POWERS icon \ No newline at end of file diff --git a/icons/retroarch.svg b/icons/retroarch.svg new file mode 100644 index 00000000..3b7c7315 --- /dev/null +++ b/icons/retroarch.svg @@ -0,0 +1 @@ +RetroArch icon \ No newline at end of file diff --git a/icons/retropie.svg b/icons/retropie.svg new file mode 100644 index 00000000..4c4f1fd4 --- /dev/null +++ b/icons/retropie.svg @@ -0,0 +1 @@ +RetroPie icon \ No newline at end of file diff --git a/icons/shanghaimetro.svg b/icons/shanghaimetro.svg new file mode 100644 index 00000000..bda77cfd --- /dev/null +++ b/icons/shanghaimetro.svg @@ -0,0 +1 @@ +Shanghai Metro icon \ No newline at end of file diff --git a/icons/tui.svg b/icons/tui.svg new file mode 100644 index 00000000..34c1f680 --- /dev/null +++ b/icons/tui.svg @@ -0,0 +1 @@ +TUI icon \ No newline at end of file diff --git a/icons/uploaded.svg b/icons/uploaded.svg new file mode 100644 index 00000000..b62084ee --- /dev/null +++ b/icons/uploaded.svg @@ -0,0 +1 @@ +Uploaded icon \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index f5b8dc10..9a1b101d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "simple-icons", - "version": "2.9.0", + "version": "2.10.0", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -6953,4 +6953,4 @@ } } } -} +} \ No newline at end of file diff --git a/package.json b/package.json index db41fc25..5a1cd3a5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "simple-icons", - "version": "2.9.0", + "version": "2.10.0", "description": "SVG icons for popular brands https://simpleicons.org", "homepage": "https://www.simpleicons.org", "keywords": [ @@ -40,4 +40,4 @@ "svgo": "svgo --config=./.svgo.yml", "get-filename": "node scripts/get-filename.js" } -} +} \ No newline at end of file diff --git a/tests/icons.test.js b/tests/icons.test.js index f3e551f0..455c3b00 100644 --- a/tests/icons.test.js +++ b/tests/icons.test.js @@ -24,7 +24,7 @@ icons.forEach(icon => { test(`${icon.title} has a "path"`, () => { expect(typeof subject.path).toBe('string'); - expect(subject.path).toMatch(/[MmZzLlHhVvCcSsQqTtAa0-9-,.\s]/g); + expect(subject.path).toMatch(/[MmZzLlHhVvCcSsQqTtAae0-9-,.\s]/g); }); test(`${icon.title} has a "slug"`, () => { diff --git a/tests/index.test.js b/tests/index.test.js index 5a01f200..29ba3ef6 100644 --- a/tests/index.test.js +++ b/tests/index.test.js @@ -24,7 +24,7 @@ icons.forEach(icon => { test(`${icon.title} has a "path"`, () => { expect(typeof subject.path).toBe('string'); - expect(subject.path).toMatch(/^[MmZzLlHhVvCcSsQqTtAa0-9-,.\s]+$/g); + expect(subject.path).toMatch(/^[MmZzLlHhVvCcSsQqTtAae0-9-,.\s]+$/g); }); test(`${icon.title} has a "slug"`, () => {