diff --git a/.svgo.yml b/.svgo.yml
index da394a84..2e7dec80 100644
--- a/.svgo.yml
+++ b/.svgo.yml
@@ -30,8 +30,13 @@ plugins:
- addAttributesToSVGElement:
attributes:
- role: img
+
+ # remove any unnecessary attributes
- removeUnknownsAndDefaults:
keepRoleAttr: true
+ - removeAttrs:
+ attrs:
+ - baseProfile
# Enable everything else
- removeDoctype
@@ -66,7 +71,6 @@ plugins:
- removeUnusedNS
- removeDesc
- removeDimensions
- - removeAttrs
- removeAttributesBySelector
- removeElementsByAttr
- addClassesToSVGElement
diff --git a/.travis.yml b/.travis.yml
index c5cf27cf..47f809a6 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -8,6 +8,7 @@ jobs:
- npm run jsonlint
- npm run svglint
- npm run wslint
+ - npm run our-lint
- name: "Build website"
language: ruby
rvm: 2.4.1
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index b917f40c..1970ac83 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -35,6 +35,8 @@ When submitting a request for a new or updated icon include helpful information
## Adding or Updating An Icon
+**Note**: If you decide to add an icon without requesting it first, the requirements above still apply.
+
### 1. Identify Official Logos and Colors
Most of the icons and brand colors on SimpleIcons have been derived from official sources. Using official sources helps ensure that the icons and colors in SimpleIcons accurately match the brand they represent. Thankfully, this is usually a simple process as organizations often provide brand guides and high quality versions of their logo for download.
@@ -145,6 +147,8 @@ Here is the object for The Movie Database as an example:
}
```
+Make sure the icon is added in alphabetical order. If you're in doubt, you can always run `npm run our-lint` - this will tell you if any of the JSON data is in the wrong order.
+
### 7. Create a pull request
Once you've completed the previous steps, create a pull request to merge your edits into the *develop* branch.
diff --git a/README.md b/README.md
index 61983265..fa8d0e59 100644
--- a/README.md
+++ b/README.md
@@ -105,6 +105,14 @@ Icons are also available on WordPress through a simple plugin created by [@tjtay
Icons are also availabe on Drupal through a module created by [Phil Wolstenholme](https://www.drupal.org/u/phil-wolstenholme), which you can find [here](https://www.drupal.org/project/simple_icons).
+### Kirby
+
+Icons are also available on Kirby through a simple plugin created by [@runxel](https://github.com/runxel), which you can find [here](https://github.com/runxel/kirby3-simpleicons).
+
+### React
+
+Icons are also available on React through a simple package created by [@wootsbot](https://github.com/wootsbot), which you can find [here](https://github.com/mamut-dev/icons-pack/tree/master/packages/react-simple-icons).
+
## Status
[![Build Status](https://travis-ci.com/simple-icons/simple-icons.svg?branch=develop)](https://travis-ci.com/simple-icons/simple-icons)
diff --git a/_data/simple-icons.json b/_data/simple-icons.json
index 1802c0e0..609c6d1f 100644
--- a/_data/simple-icons.json
+++ b/_data/simple-icons.json
@@ -15,16 +15,16 @@
"hex": "0099E5",
"source": "https://about.500px.com/press"
},
- {
- "title": "About.me",
- "hex": "00A98F",
- "source": "https://about.me/assets"
- },
{
"title": "ABB RobotStudio",
"hex": "FF9E0F",
"source": "https://new.abb.com/products/robotics/en/robotstudio/downloads"
},
+ {
+ "title": "About.me",
+ "hex": "00A98F",
+ "source": "https://about.me/assets"
+ },
{
"title": "Abstract",
"hex": "191A1B",
@@ -35,6 +35,11 @@
"hex": "41454A",
"source": "https://www.academia.edu/"
},
+ {
+ "title": "Accusoft",
+ "hex": "A9225C",
+ "source": "https://company-39138.frontify.com/d/7EKFm12NQSa8/accusoft-corporation-style-guide#/style-guide/logo"
+ },
{
"title": "ACM",
"hex": "0085CA",
@@ -50,11 +55,6 @@
"hex": "000000",
"source": "https://www.activision.com/"
},
- {
- "title": "Accusoft",
- "hex": "A9225C",
- "source": "https://company-39138.frontify.com/d/7EKFm12NQSa8/accusoft-corporation-style-guide#/style-guide/logo"
- },
{
"title": "AddThis",
"hex": "FF6550",
@@ -85,6 +85,11 @@
"hex": "00E4BB",
"source": "https://helpx.adobe.com/content/dam/help/mnemonics/au_cc_app_RGB.svg"
},
+ {
+ "title": "Adobe Creative Cloud",
+ "hex": "D41818",
+ "source": "https://www.adobe.io/apis/creativecloud/creativesdk/docs/websdk/adobe-creative-sdk-for-web_master/branding-guidelines.html"
+ },
{
"title": "Adobe Dreamweaver",
"hex": "35FA00",
@@ -135,11 +140,21 @@
"hex": "FF2BC2",
"source": "https://www.adobe.com/products/xd.html"
},
+ {
+ "title": "Aiqfome",
+ "hex": "7A1FA2",
+ "source": "https://aiqfome.com"
+ },
{
"title": "Airbnb",
"hex": "FF5A5F",
"source": "https://www.airbnb.com"
},
+ {
+ "title": "Airbus",
+ "hex": "00205B",
+ "source": "https://brand.airbus.com/brand-elements/logo.html"
+ },
{
"title": "AirPlay Audio",
"hex": "000000",
@@ -190,6 +205,11 @@
"hex": "232F3E",
"source": "https://upload.wikimedia.org/wikipedia/commons/9/93/Amazon_Web_Services_Logo.svg"
},
+ {
+ "title": "Amazon Lumberyard",
+ "hex": "67459B",
+ "source": "https://github.com/aws/lumberyard"
+ },
{
"title": "AMD",
"hex": "ED1C24",
@@ -235,6 +255,11 @@
"hex": "00ACC1",
"source": "https://angular.io/presskit"
},
+ {
+ "title": "AngularJS",
+ "hex": "E23237",
+ "source": "https://angularjs.org/"
+ },
{
"title": "Ansible",
"hex": "EE0000",
@@ -250,6 +275,11 @@
"hex": "007A88",
"source": "https://github.com/apache/airflow/tree/master/docs/img/logos"
},
+ {
+ "title": "Apache Ant",
+ "hex": "A81C7D",
+ "source": "https://commons.wikimedia.org/wiki/File:Apache-Ant-logo.svg"
+ },
{
"title": "Apache Cordova",
"hex": "E8E8E8",
@@ -266,15 +296,25 @@
"source": "https://commons.wikimedia.org/wiki/File:Apache_kafka.svg"
},
{
- "title": "Apache OpenOffice",
- "hex": "0E85CD",
- "source": "https://www.openoffice.org/marketing/art/galleries/logos/index.html"
+ "title": "Apache Maven",
+ "hex": "C71A36",
+ "source": "https://en.wikipedia.org/wiki/Apache_Maven"
},
{
"title": "Apache NetBeans IDE",
"hex": "1B6AC6",
"source": "https://netbeans.apache.org/images/"
},
+ {
+ "title": "Apache OpenOffice",
+ "hex": "0E85CD",
+ "source": "https://www.openoffice.org/marketing/art/galleries/logos/index.html"
+ },
+ {
+ "title": "Apache Pulsar",
+ "hex": "188FFF",
+ "source": "https://pulsar.apache.org/"
+ },
{
"title": "Apache RocketMQ",
"hex": "D77310",
@@ -355,6 +395,11 @@
"hex": "D40000",
"source": "https://github.com/asciinema/asciinema-logo"
},
+ {
+ "title": "AT&T",
+ "hex": "00A8E0",
+ "source": "https://commons.wikimedia.org/wiki/File:AT%26T_logo_2016.svg"
+ },
{
"title": "Atlassian",
"hex": "0052CC",
@@ -365,11 +410,6 @@
"hex": "66595C",
"source": "https://commons.wikimedia.org/wiki/File:Atom_editor_logo.svg"
},
- {
- "title": "AT&T",
- "hex": "00A8E0",
- "source": "https://commons.wikimedia.org/wiki/File:AT%26T_logo_2016.svg"
- },
{
"title": "Audi",
"hex": "BB0A30",
@@ -465,6 +505,11 @@
"hex": "DC3710",
"source": "https://blog.bandlab.com/press/"
},
+ {
+ "title": "Bandsintown",
+ "hex": "00CEC8",
+ "source": "https://corp.bandsintown.com/media-library"
+ },
{
"title": "Basecamp",
"hex": "5ECC62",
@@ -550,6 +595,11 @@
"hex": "FF5722",
"source": "https://www.blogger.com"
},
+ {
+ "title": "Bluetooth",
+ "hex": "0082FC",
+ "source": "https://www.bluetooth.com/develop-with-bluetooth/marketing-branding/"
+ },
{
"title": "BMC Software",
"hex": "FE5000",
@@ -615,6 +665,11 @@
"hex": "168EEA",
"source": "https://buffer.com/press"
},
+ {
+ "title": "Bulma",
+ "hex": "00D1B2",
+ "source": "https://github.com/jgthms/bulma/"
+ },
{
"title": "Buy Me A Coffee",
"hex": "FF813F",
@@ -630,6 +685,16 @@
"hex": "A8B9CC",
"source": "https://commons.wikimedia.org/wiki/File:The_C_Programming_Language_logo.svg"
},
+ {
+ "title": "C Sharp",
+ "hex": "239120",
+ "source": "https://upload.wikimedia.org/wikipedia/commons/0/0d/C_Sharp_wordmark.svg"
+ },
+ {
+ "title": "C++",
+ "hex": "00599C",
+ "source": "https://github.com/isocpp/logos"
+ },
{
"title": "CakePHP",
"hex": "D33C43",
@@ -650,6 +715,11 @@
"hex": "00C244",
"source": "https://cash.app/press"
},
+ {
+ "title": "Cassandra",
+ "hex": "1287B1",
+ "source": "https://upload.wikimedia.org/wikipedia/commons/5/5e/Cassandra_logo.svg"
+ },
{
"title": "Castorama",
"hex": "0078D7",
@@ -661,9 +731,9 @@
"source": "http://supertop.co/castro/press/"
},
{
- "title": "Cassandra",
- "hex": "1287B1",
- "source": "https://upload.wikimedia.org/wikipedia/commons/5/5e/Cassandra_logo.svg"
+ "title": "CD Projekt",
+ "hex": "DC0D15",
+ "source": "https://www.cdprojekt.com/en/media/logotypes/"
},
{
"title": "Celery",
@@ -680,6 +750,11 @@
"hex": "1EABE2",
"source": "https://cevo.com/"
},
+ {
+ "title": "ChartMogul",
+ "hex": "13324B",
+ "source": "https://chartmogul.com/company/"
+ },
{
"title": "Chase",
"hex": "117ACA",
@@ -710,11 +785,26 @@
"hex": "1BA0D7",
"source": "https://www.cisco.com/"
},
+ {
+ "title": "Citrix",
+ "hex": "000000",
+ "source": "https://www.citrix.com/news/media-resources.html"
+ },
+ {
+ "title": "Citroën",
+ "hex": "6E6E6E",
+ "source": "https://citroen.pcaci.co.uk/logo.php"
+ },
{
"title": "CiviCRM",
"hex": "81C459",
"source": "https://civicrm.org/trademark"
},
+ {
+ "title": "Claris",
+ "hex": "000000",
+ "source": "https://www.claris.com/"
+ },
{
"title": "Clockify",
"hex": "03A9F4",
@@ -740,11 +830,21 @@
"hex": "064F8C",
"source": "https://www.kitware.com/platforms/"
},
+ {
+ "title": "Co-op",
+ "hex": "00B1E7",
+ "source": "http://www.co-operative.coop/corporate/press/logos/"
+ },
{
"title": "Codacy",
"hex": "222F29",
"source": "https://www.codacy.com/blog/"
},
+ {
+ "title": "Code Climate",
+ "hex": "000000",
+ "source": "https://codeclimate.com/"
+ },
{
"title": "Codecademy",
"hex": "1F4056",
@@ -755,11 +855,6 @@
"hex": "5B4638",
"source": "https://www.codechef.com/"
},
- {
- "title": "Code Climate",
- "hex": "000000",
- "source": "https://codeclimate.com/"
- },
{
"title": "Codecov",
"hex": "F01F7A",
@@ -820,6 +915,11 @@
"hex": "0667D0",
"source": "https://www.coinbase.com/press"
},
+ {
+ "title": "Common Workflow Language",
+ "hex": "B5314C",
+ "source": "https://github.com/common-workflow-language/logo/blob/master/CWL-Logo-nofonts.svg"
+ },
{
"title": "Composer",
"hex": "885630",
@@ -830,6 +930,11 @@
"hex": "00AAEF",
"source": "https://compropago.com"
},
+ {
+ "title": "Conda-Forge",
+ "hex": "000000",
+ "source": "https://github.com/conda-forge/conda-forge.github.io/"
+ },
{
"title": "Conekta",
"hex": "414959",
@@ -840,21 +945,11 @@
"hex": "172B4D",
"source": "https://www.atlassian.com/company/news/press-kit"
},
- {
- "title": "Conda-Forge",
- "hex": "000000",
- "source": "https://github.com/conda-forge/conda-forge.github.io/"
- },
{
"title": "Convertio",
"hex": "FF3333",
"source": "https://convertio.co/"
},
- {
- "title": "Co-op",
- "hex": "00B1E7",
- "source": "http://www.co-operative.coop/corporate/press/logos/"
- },
{
"title": "Corona Engine",
"hex": "F96F29",
@@ -880,11 +975,6 @@
"hex": "FF6C2C",
"source": "https://cpanel.net/company/cpanel-brand-guide/"
},
- {
- "title": "Adobe Creative Cloud",
- "hex": "D41818",
- "source": "https://www.adobe.io/apis/creativecloud/creativesdk/docs/websdk/adobe-creative-sdk-for-web_master/branding-guidelines.html"
- },
{
"title": "Creative Commons",
"hex": "EF9421",
@@ -910,36 +1000,21 @@
"hex": "000000",
"source": "https://www.cryengine.com/brand"
},
- {
- "title": "CSS3",
- "hex": "1572B6",
- "source": "http://www.w3.org/html/logo/"
- },
{
"title": "CSS Wizardry",
"hex": "F43059",
"source": "http://csswizardry.com"
},
{
- "title": "Common Workflow Language",
- "hex": "B5314C",
- "source": "https://github.com/common-workflow-language/logo/blob/master/CWL-Logo-nofonts.svg"
- },
- {
- "title": "C Sharp",
- "hex": "239120",
- "source": "https://upload.wikimedia.org/wikipedia/commons/0/0d/C_Sharp_wordmark.svg"
+ "title": "CSS3",
+ "hex": "1572B6",
+ "source": "http://www.w3.org/html/logo/"
},
{
"title": "curl",
"hex": "073551",
"source": "https://curl.haxx.se/logo/"
},
- {
- "title": "C++",
- "hex": "00599C",
- "source": "https://github.com/isocpp/logos"
- },
{
"title": "D3.js",
"hex": "F9A03C",
@@ -955,6 +1030,11 @@
"hex": "0175C2",
"source": "https://github.com/dart-lang/site-shared/tree/master/src/_assets/image/dart/logo"
},
+ {
+ "title": "Das Erste",
+ "hex": "001A4B",
+ "source": "https://en.wikipedia.org/wiki/Das_Erste"
+ },
{
"title": "Dashlane",
"hex": "007C97",
@@ -1030,6 +1110,11 @@
"hex": "2D72D9",
"source": "https://www.designernews.co"
},
+ {
+ "title": "dev.to",
+ "hex": "0A0A0A",
+ "source": "https://dev.to/"
+ },
{
"title": "DeviantArt",
"hex": "05CC47",
@@ -1040,11 +1125,6 @@
"hex": "F99A66",
"source": "https://devrant.com"
},
- {
- "title": "dev.to",
- "hex": "0A0A0A",
- "source": "https://dev.to/"
- },
{
"title": "Diaspora",
"hex": "000000",
@@ -1065,6 +1145,11 @@
"hex": "263238",
"source": "https://directus.io/resources.html"
},
+ {
+ "title": "Discogs",
+ "hex": "333333",
+ "source": "https://www.discogs.com/brand"
+ },
{
"title": "Discord",
"hex": "7289DA",
@@ -1080,16 +1165,16 @@
"hex": "FF6000",
"source": "https://www.discovernetwork.com/en-us/business-resources/free-signage-logos"
},
- {
- "title": "Disroot",
- "hex": "50162D",
- "source": "https://git.fosscommunity.in/disroot/assests/blob/master/d.svg"
- },
{
"title": "Disqus",
"hex": "2E9FFF",
"source": "https://disqus.com/brand"
},
+ {
+ "title": "Disroot",
+ "hex": "50162D",
+ "source": "https://git.fosscommunity.in/disroot/assests/blob/master/d.svg"
+ },
{
"title": "Django",
"hex": "092E20",
@@ -1115,6 +1200,11 @@
"hex": "000000",
"source": "https://www.dolby.com/us/en/about/brand-identity.html"
},
+ {
+ "title": "Douban",
+ "hex": "007722",
+ "source": "https://zh.wikipedia.org/wiki/Douban"
+ },
{
"title": "Draugiem.lv",
"hex": "FF6600",
@@ -1175,16 +1265,6 @@
"hex": "E53238",
"source": "https://go.developer.ebay.com/logos"
},
- {
- "title": "EVRY",
- "hex": "063A54",
- "source": "https://www.evry.com/en/"
- },
- {
- "title": "Exercism",
- "hex": "009CAB",
- "source": "https://github.com/exercism/website-icons/blob/master/exercism/logo-icon.svg"
- },
{
"title": "Eclipse IDE",
"hex": "2C2255",
@@ -1201,12 +1281,12 @@
"source": "https://www.elastic.co/brand"
},
{
- "title": "Elasticsearch",
+ "title": "Elastic Stack",
"hex": "005571",
"source": "https://www.elastic.co/brand"
},
{
- "title": "Elastic Stack",
+ "title": "Elasticsearch",
"hex": "005571",
"source": "https://www.elastic.co/brand"
},
@@ -1240,6 +1320,11 @@
"hex": "E04E39",
"source": "https://emberjs.com/logos/"
},
+ {
+ "title": "Emby",
+ "hex": "52B54B",
+ "source": "https://emby.media/"
+ },
{
"title": "Emlakjet",
"hex": "0AE524",
@@ -1290,16 +1375,16 @@
"hex": "F16521",
"source": "https://www.etsy.com/uk/press"
},
- {
- "title": "Eventbrite",
- "hex": "F05537",
- "source": "https://www.eventbrite.com/signin/"
- },
{
"title": "Event Store",
"hex": "5AB552",
"source": "https://github.com/eventstore/brand"
},
+ {
+ "title": "Eventbrite",
+ "hex": "F05537",
+ "source": "https://www.eventbrite.com/signin/"
+ },
{
"title": "Evernote",
"hex": "00A82D",
@@ -1310,6 +1395,16 @@
"hex": "FA4B32",
"source": "https://everplaces.com"
},
+ {
+ "title": "EVRY",
+ "hex": "063A54",
+ "source": "https://www.evry.com/en/"
+ },
+ {
+ "title": "Exercism",
+ "hex": "009CAB",
+ "source": "https://github.com/exercism/website-icons/blob/master/exercism/logo-icon.svg"
+ },
{
"title": "Experts Exchange",
"hex": "00AAE7",
@@ -1370,6 +1465,11 @@
"hex": "294172",
"source": "https://fedoraproject.org/wiki/Logo/UsageGuidelines"
},
+ {
+ "title": "FedRAMP",
+ "hex": "112E51",
+ "source": "https://www.fedramp.gov/assets/resources/documents/FedRAMP_Branding_Guidance.pdf"
+ },
{
"title": "Feedly",
"hex": "2BB24C",
@@ -1380,6 +1480,11 @@
"hex": "FFBF3B",
"source": "https://fidoalliance.org/overview/legal/logo-usage/"
},
+ {
+ "title": "Figma",
+ "hex": "F24E1E",
+ "source": "https://figma.com/"
+ },
{
"title": "figshare",
"hex": "556472",
@@ -1435,6 +1540,11 @@
"hex": "00AEEF",
"source": "https://www.floatplane.com/"
},
+ {
+ "title": "Flood",
+ "hex": "4285F4",
+ "source": "https://flood.io/"
+ },
{
"title": "Flutter",
"hex": "02569B",
@@ -1450,6 +1560,11 @@
"hex": "21B573",
"source": "https://www.formstack.com/brand/guidelines"
},
+ {
+ "title": "Fortinet",
+ "hex": "EE3124",
+ "source": "http://www.fortinet.com/"
+ },
{
"title": "Fossa",
"hex": "90A1B8",
@@ -1465,11 +1580,6 @@
"hex": "F94877",
"source": "https://foursquare.com/about/logos"
},
- {
- "title": "Figma",
- "hex": "F24E1E",
- "source": "https://figma.com/"
- },
{
"title": "Framer",
"hex": "0055FF",
@@ -1635,6 +1745,11 @@
"hex": "A22430",
"source": "https://www.gnu.org/graphics/social.html"
},
+ {
+ "title": "Go",
+ "hex": "00ADD8",
+ "source": "https://blog.golang.org/go-brand"
+ },
{
"title": "Godot Engine",
"hex": "478CBF",
@@ -1655,11 +1770,6 @@
"hex": "663300",
"source": "https://www.goodreads.com/about/press"
},
- {
- "title": "Go",
- "hex": "00ADD8",
- "source": "https://blog.golang.org/go-brand"
- },
{
"title": "Google",
"hex": "4285F4",
@@ -1670,6 +1780,16 @@
"hex": "4285F4",
"source": "https://designguidelines.withgoogle.com/ads-branding/google-ads/logos.html#logos-brand-logo-lockups"
},
+ {
+ "title": "Google Analytics",
+ "hex": "FFC107",
+ "source": "https://analytics.google.com"
+ },
+ {
+ "title": "Google Assistant",
+ "hex": "4285F4",
+ "source": "https://assistant.google.com/"
+ },
{
"title": "Google Chrome",
"hex": "4285F4",
@@ -1680,16 +1800,16 @@
"hex": "4285F4",
"source": "https://cloud.google.com/"
},
- {
- "title": "Google Analytics",
- "hex": "FFC107",
- "source": "https://analytics.google.com"
- },
{
"title": "Google Drive",
"hex": "4285F4",
"source": "https://developers.google.com/drive/web/branding"
},
+ {
+ "title": "Google Fit",
+ "hex": "4285F4",
+ "source": "https://en.wikipedia.org/wiki/Google_Fit"
+ },
{
"title": "Google Hangouts",
"hex": "0C9D58",
@@ -1705,6 +1825,16 @@
"hex": "FFBB00",
"source": "https://play.google.com/store/apps/details?id=com.google.android.keep"
},
+ {
+ "title": "Google Lens",
+ "hex": "4285F4",
+ "source": "https://lens.google.com/"
+ },
+ {
+ "title": "Google Maps",
+ "hex": "4285F4",
+ "source": "https://upload.wikimedia.org/wikipedia/commons/a/a9/Google_Maps_icon.svg"
+ },
{
"title": "Google Pay",
"hex": "5F6368",
@@ -1785,6 +1915,11 @@
"hex": "53A318",
"source": "https://brandplaybook.groupon.com/guidelines/logo/"
},
+ {
+ "title": "Grunt",
+ "hex": "FBA919",
+ "source": "https://github.com/gruntjs/gruntjs.com/tree/master/src/media"
+ },
{
"title": "Gulp",
"hex": "DA4648",
@@ -1865,6 +2000,11 @@
"hex": "EA8220",
"source": "https://haxe.org/foundation/branding.html"
},
+ {
+ "title": "HelloFresh",
+ "hex": "91C11E",
+ "source": "https://www.hellofresh.com/landing/student"
+ },
{
"title": "Helm",
"hex": "277A9F",
@@ -1930,16 +2070,16 @@
"hex": "0096D6",
"source": "https://commons.wikimedia.org/wiki/File:HP_New_Logo_2D.svg"
},
- {
- "title": "HTML5",
- "hex": "E34F26",
- "source": "http://www.w3.org/html/logo/"
- },
{
"title": "HTML Academy",
"hex": "302683",
"source": "https://htmlacademy.ru/"
},
+ {
+ "title": "HTML5",
+ "hex": "E34F26",
+ "source": "http://www.w3.org/html/logo/"
+ },
{
"title": "Huawei",
"hex": "FF0000",
@@ -2095,6 +2235,11 @@
"hex": "000000",
"source": "https://github.com/invoiceninja/invoiceninja"
},
+ {
+ "title": "ioBroker",
+ "hex": "3399CC",
+ "source": "https://github.com/ioBroker/awesome-iobroker/blob/master/images/"
+ },
{
"title": "Ionic",
"hex": "3880FF",
@@ -2150,6 +2295,11 @@
"hex": "D24939",
"source": "https://wiki.jenkins-ci.org/display/JENKINS/Logo"
},
+ {
+ "title": "Jenkins X",
+ "hex": "73C3D5",
+ "source": "https://github.com/cdfoundation/artwork"
+ },
{
"title": "Jest",
"hex": "C21325",
@@ -2205,6 +2355,11 @@
"hex": "F37626",
"source": "https://github.com/jupyter/design"
},
+ {
+ "title": "Just Eat",
+ "hex": "FA0029",
+ "source": "https://d2vkuayfhnkplp.cloudfront.net/assets/dist/img/logos/je-logo-v3.svg"
+ },
{
"title": "JustGiving",
"hex": "AD29B6",
@@ -2225,6 +2380,11 @@
"hex": "009982",
"source": "https://www.kaspersky.com"
},
+ {
+ "title": "KeePassXC",
+ "hex": "6CAC4D",
+ "source": "https://github.com/keepassxreboot/keepassxc/"
+ },
{
"title": "Kentico",
"hex": "F05A22",
@@ -2280,6 +2440,11 @@
"hex": "333333",
"source": "https://withknown.com/img/logo_k.png"
},
+ {
+ "title": "Ko-fi",
+ "hex": "F16061",
+ "source": "https://ko-fi.com/home/about"
+ },
{
"title": "Kodi",
"hex": "17B2E7",
@@ -2295,11 +2460,6 @@
"hex": "0095D5",
"source": "https://resources.jetbrains.com/storage/products/kotlin/docs/kotlin_logos.zip"
},
- {
- "title": "Ko-fi",
- "hex": "F16061",
- "source": "https://ko-fi.com/home/about"
- },
{
"title": "Krita",
"hex": "3BABFF",
@@ -2310,6 +2470,11 @@
"hex": "326CE5",
"source": "https://github.com/kubernetes/kubernetes/tree/master/logo"
},
+ {
+ "title": "Kyocera",
+ "hex": "ED1C24",
+ "source": "https://en.wikipedia.org/wiki/Kyocera"
+ },
{
"title": "Laravel",
"hex": "FF2D20",
@@ -2325,16 +2490,16 @@
"hex": "252D37",
"source": "https://nova.laravel.com/"
},
- {
- "title": "LastPass",
- "hex": "D32D27",
- "source": "https://lastpass.com/press-room/"
- },
{
"title": "Last.fm",
"hex": "D51007",
"source": "http://www.last.fm/about/resources"
},
+ {
+ "title": "LastPass",
+ "hex": "D32D27",
+ "source": "https://lastpass.com/press-room/"
+ },
{
"title": "LaTeX",
"hex": "008080",
@@ -2370,6 +2535,11 @@
"hex": "FFFFFF",
"source": "https://lgtm.com/"
},
+ {
+ "title": "Liberapay",
+ "hex": "F6C915",
+ "source": "https://liberapay.com/assets/liberapay/icon-v2_yellow-r.svg"
+ },
{
"title": "LibraryThing",
"hex": "251A15",
@@ -2380,11 +2550,6 @@
"hex": "18A303",
"source": "https://wiki.documentfoundation.org/Marketing/Branding"
},
- {
- "title": "Liberapay",
- "hex": "F6C915",
- "source": "https://liberapay.com/assets/liberapay/icon-v2_yellow-r.svg"
- },
{
"title": "Line",
"hex": "00C300",
@@ -2415,6 +2580,11 @@
"hex": "009BEE",
"source": "http://www.linuxfoundation.org/about/about-linux"
},
+ {
+ "title": "Linux Mint",
+ "hex": "87CF3E",
+ "source": "https://commons.wikimedia.org/wiki/File:Linux_Mint_logo_without_wordmark.svg"
+ },
{
"title": "Litecoin",
"hex": "A6A9AA",
@@ -2435,6 +2605,16 @@
"hex": "262D3A",
"source": "https://llvm.org/Logo.html"
},
+ {
+ "title": "LMMS",
+ "hex": "10B146",
+ "source": "https://lmms.io/branding"
+ },
+ {
+ "title": "LogMeIn",
+ "hex": "45B6F2",
+ "source": "https://www.logmein.com/"
+ },
{
"title": "Logstash",
"hex": "005571",
@@ -2480,16 +2660,16 @@
"hex": "00AF9C",
"source": "https://github.com/topjohnwu/Magisk/blob/master/app/src/main/res/drawable/ic_magisk.xml"
},
- {
- "title": "MailChimp",
- "hex": "FFE01B",
- "source": "http://mailchimp.com/about/brand-assets"
- },
{
"title": "Mail.Ru",
"hex": "168DE2",
"source": "https://corp.mail.ru/en/press/identity/"
},
+ {
+ "title": "MailChimp",
+ "hex": "FFE01B",
+ "source": "http://mailchimp.com/about/brand-assets"
+ },
{
"title": "MakerBot",
"hex": "FF1E0D",
@@ -2535,6 +2715,11 @@
"hex": "757575",
"source": "https://material.io/design/"
},
+ {
+ "title": "Material Design Icons",
+ "hex": "2196F3",
+ "source": "https://materialdesignicons.com/icon/vector-square"
+ },
{
"title": "Material-UI",
"hex": "0081CB",
@@ -2643,7 +2828,7 @@
{
"title": "Microsoft Edge",
"hex": "0078D7",
- "source": "https://compass-ssl.microsoft.com/assets/86/b5/86b52157-162f-4130-ab00-3db03397c46d.svg?n=edge.svg"
+ "source": "https://support.microsoft.com/en-us/help/17171/microsoft-edge-get-to-know"
},
{
"title": "Microsoft Excel",
@@ -2675,16 +2860,16 @@
"hex": "D24726",
"source": "https://www.office.com"
},
- {
- "title": "Microsoft Word",
- "hex": "2B579A",
- "source": "https://www.office.com"
- },
{
"title": "Microsoft Teams",
"hex": "6264A7",
"source": "https://docs.microsoft.com/media/logos/logo_MSTeams.svg"
},
+ {
+ "title": "Microsoft Word",
+ "hex": "2B579A",
+ "source": "https://www.office.com"
+ },
{
"title": "MicroStrategy",
"hex": "D9232E",
@@ -2700,11 +2885,6 @@
"hex": "53AC56",
"source": "https://www.minetest.net/"
},
- {
- "title": "Linux Mint",
- "hex": "87CF3E",
- "source": "https://commons.wikimedia.org/wiki/File:Linux_Mint_logo_without_wordmark.svg"
- },
{
"title": "Minutemailer",
"hex": "3ABFE6",
@@ -2725,6 +2905,11 @@
"hex": "002050",
"source": "https://github.com/mixer/branding-kit/"
},
+ {
+ "title": "Mocha",
+ "hex": "8D6748",
+ "source": "https://mochajs.org/"
+ },
{
"title": "Mojang",
"hex": "DB1F29",
@@ -2820,6 +3005,11 @@
"hex": "57A143",
"source": "https://github.com/neovim/neovim.github.io/tree/master/logos"
},
+ {
+ "title": "NetApp",
+ "hex": "0067C5",
+ "source": "http://www.netapp.com/"
+ },
{
"title": "Netflix",
"hex": "E50914",
@@ -2880,6 +3070,11 @@
"hex": "E60012",
"source": "http://www.nintendo.co.uk/"
},
+ {
+ "title": "Node-RED",
+ "hex": "8F0000",
+ "source": "https://nodered.org/about/resources/"
+ },
{
"title": "Node.js",
"hex": "339933",
@@ -2895,11 +3090,6 @@
"hex": "124191",
"source": "https://www.nokia.com/"
},
- {
- "title": "Node-RED",
- "hex": "8F0000",
- "source": "https://nodered.org/about/resources/"
- },
{
"title": "Notion",
"hex": "000000",
@@ -2970,21 +3160,31 @@
"hex": "F4731C",
"source": "http://v.ok.ru/logo.html"
},
+ {
+ "title": "Opel",
+ "hex": "F7D900",
+ "source": "https://de.wikipedia.org/wiki/Opel"
+ },
{
"title": "Open Access",
"hex": "F68212",
"source": "https://commons.wikimedia.org/wiki/File:Open_Access_logo_PLoS_white.svg"
},
- {
- "title": "OpenAPI Initiative",
- "hex": "6BA539",
- "source": "https://www.openapis.org/faq/style-guide"
- },
{
"title": "Open Collective",
"hex": "7FADF2",
"source": "https://docs.opencollective.com/help/about#media-logo"
},
+ {
+ "title": "Open Source Initiative",
+ "hex": "3DA639",
+ "source": "https://opensource.org/logo-usage-guidelines"
+ },
+ {
+ "title": "OpenAPI Initiative",
+ "hex": "6BA539",
+ "source": "https://www.openapis.org/faq/style-guide"
+ },
{
"title": "OpenID",
"hex": "F78C40",
@@ -3020,6 +3220,11 @@
"hex": "172B4D",
"source": "https://www.atlassian.com/company/news/press-kit"
},
+ {
+ "title": "OpsLevel",
+ "hex": "1890FF",
+ "source": "https://www.opslevel.com/"
+ },
{
"title": "Oracle",
"hex": "F80000",
@@ -3035,11 +3240,6 @@
"hex": "F56C2D",
"source": "https://www.origin.com/gbr/en-us/store"
},
- {
- "title": "Open Source Initiative",
- "hex": "3DA639",
- "source": "https://opensource.org/logo-usage-guidelines"
- },
{
"title": "OSMC",
"hex": "17394A",
@@ -3085,6 +3285,11 @@
"hex": "EFD01B",
"source": "https://projects.invisionapp.com/boards/8UOJQWW2J3G5#/1145336"
},
+ {
+ "title": "Parity Substrate",
+ "hex": "282828",
+ "source": "http://substrate.dev/"
+ },
{
"title": "Parse.ly",
"hex": "5BA745",
@@ -3130,6 +3335,11 @@
"hex": "777BB4",
"source": "http://php.net/download-logos.php"
},
+ {
+ "title": "Pi-hole",
+ "hex": "F60D1A",
+ "source": "https://github.com/pi-hole/web/"
+ },
{
"title": "Picarto.TV",
"hex": "1DA456",
@@ -3161,9 +3371,9 @@
"source": "https://www.pivotaltracker.com/branding-guidelines"
},
{
- "title": "Pi-hole",
- "hex": "F60D1A",
- "source": "https://github.com/pi-hole/web/"
+ "title": "Pixabay",
+ "hex": "2EC66D",
+ "source": "https://pixabay.com/service/about/"
},
{
"title": "PJSIP",
@@ -3175,16 +3385,16 @@
"hex": "0085DE",
"source": "https://plangrid.com/en/"
},
- {
- "title": "Player.me",
- "hex": "C0379A",
- "source": "https://player.me/p/about-us"
- },
{
"title": "Player FM",
"hex": "C8122A",
"source": "https://player.fm/"
},
+ {
+ "title": "Player.me",
+ "hex": "C0379A",
+ "source": "https://player.me/p/about-us"
+ },
{
"title": "PlayStation",
"hex": "003791",
@@ -3230,6 +3440,11 @@
"hex": "F43E37",
"source": "https://blog.pocketcasts.com/press/"
},
+ {
+ "title": "Polymer Project",
+ "hex": "FF4470",
+ "source": "https://github.com/Polymer/polymer-project.org/tree/master/app/images/logos"
+ },
{
"title": "PostgreSQL",
"hex": "336791",
@@ -3290,6 +3505,11 @@
"hex": "34A7C1",
"source": "https://proto.io/en/presskit"
},
+ {
+ "title": "protocols.io",
+ "hex": "4D9FE7",
+ "source": "https://www.protocols.io/brand"
+ },
{
"title": "ProtonMail",
"hex": "8B89CC",
@@ -3360,21 +3580,26 @@
"hex": "00B4EF",
"source": "https://www.qualtrics.com/brand-book/"
},
- {
- "title": "Quantopian",
- "hex": "C50000",
- "source": "https://www.quantopian.com"
- },
{
"title": "Quantcast",
"hex": "1E262C",
"source": "http://branding.quantcast.com/logouse/"
},
+ {
+ "title": "Quantopian",
+ "hex": "C50000",
+ "source": "https://www.quantopian.com"
+ },
{
"title": "Quarkus",
"hex": "4695EB",
"source": "https://design.jboss.org/quarkus/"
},
+ {
+ "title": "Quest",
+ "hex": "FB4F14",
+ "source": "https://www.quest.com/legal/trademark-information.aspx"
+ },
{
"title": "QuickTime",
"hex": "1C69F0",
@@ -3430,16 +3655,16 @@
"hex": "61DAFB",
"source": "https://facebook.github.io/react/"
},
- {
- "title": "ReactOS",
- "hex": "0088CC",
- "source": "https://github.com/reactos/press-media"
- },
{
"title": "React Router",
"hex": "CA4245",
"source": "https://reacttraining.com/react-router/"
},
+ {
+ "title": "ReactOS",
+ "hex": "0088CC",
+ "source": "https://github.com/reactos/press-media"
+ },
{
"title": "Read the Docs",
"hex": "8CA1AF",
@@ -3460,16 +3685,6 @@
"hex": "FFFFFF",
"source": "https://www.reasonstudios.com/press"
},
- {
- "title": "Redbubble",
- "hex": "E41321",
- "source": "https://www.redbubble.com/explore/client/4196122a442ab3f429ec802f71717465.svg"
- },
- {
- "title": "Reddit",
- "hex": "FF4500",
- "source": "https://worldvectorlogo.com/logo/reddit-2"
- },
{
"title": "Red Hat",
"hex": "EE0000",
@@ -3480,6 +3695,16 @@
"hex": "EE0000",
"source": "https://www.openshift.com/"
},
+ {
+ "title": "Redbubble",
+ "hex": "E41321",
+ "source": "https://www.redbubble.com/explore/client/4196122a442ab3f429ec802f71717465.svg"
+ },
+ {
+ "title": "Reddit",
+ "hex": "FF4500",
+ "source": "https://worldvectorlogo.com/logo/reddit-2"
+ },
{
"title": "Redis",
"hex": "D82C20",
@@ -3510,6 +3735,11 @@
"hex": "E43526",
"source": "https://www.reverbnation.com"
},
+ {
+ "title": "Rhinoceros",
+ "hex": "801010",
+ "source": "https://www.rhino3d.com/"
+ },
{
"title": "Riot",
"hex": "368BD6",
@@ -3660,6 +3890,11 @@
"hex": "21B352",
"source": "https://sellfy.com/about/"
},
+ {
+ "title": "Semantic Web",
+ "hex": "005A9C",
+ "source": "https://www.w3.org/2007/10/sw-logos.html"
+ },
{
"title": "Semaphore CI",
"hex": "19A974",
@@ -3750,11 +3985,21 @@
"hex": "00AFF0",
"source": "http://blogs.skype.com/?attachment_id=56273"
},
+ {
+ "title": "Skype for Business",
+ "hex": "00AFF0",
+ "source": "https://en.wikipedia.org/wiki/Skype_for_Business_Server"
+ },
{
"title": "Slack",
"hex": "4A154B",
"source": "https://slack.com/brand-guidelines"
},
+ {
+ "title": "Slackware",
+ "hex": "000000",
+ "source": "https://en.wikipedia.org/wiki/Slackware"
+ },
{
"title": "Slashdot",
"hex": "026664",
@@ -3862,7 +4107,7 @@
},
{
"title": "SourceForge",
- "hex": "535353",
+ "hex": "FF6600",
"source": "https://sourceforge.net/"
},
{
@@ -3895,16 +4140,16 @@
"hex": "4398CC",
"source": "https://spdx.org/Resources"
},
- {
- "title": "Spectrum",
- "hex": "7B16FF",
- "source": "https://spectrum.chat"
- },
{
"title": "Speaker Deck",
"hex": "339966",
"source": "https://speakerdeck.com/"
},
+ {
+ "title": "Spectrum",
+ "hex": "7B16FF",
+ "source": "https://spectrum.chat"
+ },
{
"title": "Spotify",
"hex": "1ED760",
@@ -3945,11 +4190,6 @@
"hex": "000000",
"source": "http://squarespace.com/brand-guidelines"
},
- {
- "title": "Stackbit",
- "hex": "3EB0FD",
- "source": "https://www.stackbit.com/"
- },
{
"title": "Stack Exchange",
"hex": "1E5397",
@@ -3960,6 +4200,11 @@
"hex": "FE7A16",
"source": "http://stackoverflow.com"
},
+ {
+ "title": "Stackbit",
+ "hex": "3EB0FD",
+ "source": "https://www.stackbit.com/"
+ },
{
"title": "StackPath",
"hex": "000000",
@@ -3980,16 +4225,16 @@
"hex": "1F3641",
"source": "http://statamic.com/press"
},
- {
- "title": "Statuspage",
- "hex": "172B4D",
- "source": "https://www.atlassian.com/company/news/press-kit"
- },
{
"title": "Staticman",
"hex": "000000",
"source": "https://staticman.net/"
},
+ {
+ "title": "Statuspage",
+ "hex": "172B4D",
+ "source": "https://www.atlassian.com/company/news/press-kit"
+ },
{
"title": "Steam",
"hex": "000000",
@@ -4135,6 +4380,11 @@
"hex": "B6B5B6",
"source": "https://www.synology.com/en-global/company/branding"
},
+ {
+ "title": "T-Mobile",
+ "hex": "E20074",
+ "source": "https://www.t-mobile.com/news/media-library?fulltext=logo"
+ },
{
"title": "Tableau",
"hex": "E97627",
@@ -4200,16 +4450,16 @@
"hex": "F37440",
"source": "https://github.com/Teradata/teradata.github.io/"
},
- {
- "title": "Tesla",
- "hex": "CC0000",
- "source": "http://www.teslamotors.com/en_GB/about"
- },
{
"title": "Terraform",
"hex": "623CE4",
"source": "https://www.hashicorp.com/brand#terraform"
},
+ {
+ "title": "Tesla",
+ "hex": "CC0000",
+ "source": "http://www.teslamotors.com/en_GB/about"
+ },
{
"title": "The Mighty",
"hex": "D0072A",
@@ -4220,11 +4470,21 @@
"hex": "01D277",
"source": "https://www.themoviedb.org/about/logos-attribution"
},
+ {
+ "title": "The Register",
+ "hex": "FF0000",
+ "source": "https://www.theregister.co.uk/"
+ },
{
"title": "Tidal",
"hex": "000000",
"source": "https://tidal.com"
},
+ {
+ "title": "Tide",
+ "hex": "4050FB",
+ "source": "https://www.tide.co/newsroom/"
+ },
{
"title": "Tik Tok",
"hex": "000000",
@@ -4240,11 +4500,6 @@
"hex": "FF6B6B",
"source": "http://www.gotinder.com/press"
},
- {
- "title": "T-Mobile",
- "hex": "E20074",
- "source": "https://www.t-mobile.com/news/media-library?fulltext=logo"
- },
{
"title": "Todoist",
"hex": "E44332",
@@ -4290,6 +4545,11 @@
"hex": "ED1C24",
"source": "https://trakt.tv"
},
+ {
+ "title": "Transport for Ireland",
+ "hex": "00B274",
+ "source": "https://www.transportforireland.ie/"
+ },
{
"title": "Travis CI",
"hex": "3EAAAF",
@@ -4570,25 +4830,25 @@
"hex": "333665",
"source": "https://www.waze.com/"
},
+ {
+ "title": "Wear OS",
+ "hex": "4285F4",
+ "source": "https://wearos.google.com/"
+ },
{
"title": "Weasyl",
"hex": "990000",
"source": "https://www.weasyl.com/"
},
- {
- "title": "WebAuthn",
- "hex": "3423A6",
- "source": "https://github.com/apowers313/webauthn-logos"
- },
{
"title": "WebAssembly",
"hex": "654FF0",
"source": "https://webassembly.org/"
},
{
- "title": "Webpack",
- "hex": "8DD6F9",
- "source": "https://webpack.js.org/branding/"
+ "title": "WebAuthn",
+ "hex": "3423A6",
+ "source": "https://github.com/apowers313/webauthn-logos"
},
{
"title": "webcomponents.org",
@@ -4600,6 +4860,11 @@
"hex": "7DA0D0",
"source": "https://github.com/webmin/webmin"
},
+ {
+ "title": "Webpack",
+ "hex": "8DD6F9",
+ "source": "https://webpack.js.org/branding/"
+ },
{
"title": "WebStorm",
"hex": "000000",
@@ -4700,10 +4965,25 @@
"hex": "5BC4EE",
"source": "https://write.as/brand"
},
+ {
+ "title": "X-Pack",
+ "hex": "005571",
+ "source": "https://www.elastic.co/brand"
+ },
+ {
+ "title": "X.Org",
+ "hex": "F28834",
+ "source": "https://upload.wikimedia.org/wikipedia/commons/9/90/X.Org_Logo.svg"
+ },
{
"title": "Xamarin",
- "hex": "4393D4",
- "source": "https://dotnet.microsoft.com/apps/xamarin"
+ "hex": "3498DB",
+ "source": "https://github.com/dotnet/swag/tree/master/xamarin"
+ },
+ {
+ "title": "XAMPP",
+ "hex": "FB7A24",
+ "source": "https://www.apachefriends.org/en/"
},
{
"title": "Xbox",
@@ -4720,11 +5000,6 @@
"hex": "F59812",
"source": "https://www.xda-developers.com/"
},
- {
- "title": "X.Org",
- "hex": "F28834",
- "source": "https://upload.wikimedia.org/wikipedia/commons/9/90/X.Org_Logo.svg"
- },
{
"title": "Xero",
"hex": "13B5EA",
@@ -4750,11 +5025,6 @@
"hex": "002B5C",
"source": "https://commons.wikimedia.org/wiki/File:XMPP_logo.svg"
},
- {
- "title": "X-Pack",
- "hex": "005571",
- "source": "https://www.elastic.co/brand"
- },
{
"title": "XRP",
"hex": "25A768",
@@ -4810,6 +5080,11 @@
"hex": "FF0000",
"source": "https://www.youtube.com/yt/about/brand-resources/#logos-icons-colors"
},
+ {
+ "title": "Z-Wave",
+ "hex": "1B365D",
+ "source": "https://www.z-wave.com/"
+ },
{
"title": "Zalando",
"hex": "FF6900",
@@ -4884,11 +5159,6 @@
"title": "Zulip",
"hex": "52C2AF",
"source": "https://github.com/zulip/zulip/"
- },
- {
- "title": "Z-Wave",
- "hex": "1B365D",
- "source": "https://www.z-wave.com/"
}
]
}
diff --git a/icons/aiqfome.svg b/icons/aiqfome.svg
new file mode 100644
index 00000000..0659b7e2
--- /dev/null
+++ b/icons/aiqfome.svg
@@ -0,0 +1 @@
+
diff --git a/icons/airbus.svg b/icons/airbus.svg
new file mode 100644
index 00000000..2ed31c9a
--- /dev/null
+++ b/icons/airbus.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/icons/amazonlumberyard.svg b/icons/amazonlumberyard.svg
new file mode 100644
index 00000000..4881f054
--- /dev/null
+++ b/icons/amazonlumberyard.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/icons/angularjs.svg b/icons/angularjs.svg
new file mode 100644
index 00000000..cfefd759
--- /dev/null
+++ b/icons/angularjs.svg
@@ -0,0 +1 @@
+
diff --git a/icons/apacheant.svg b/icons/apacheant.svg
new file mode 100644
index 00000000..c74ebcb9
--- /dev/null
+++ b/icons/apacheant.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/icons/apachemaven.svg b/icons/apachemaven.svg
new file mode 100644
index 00000000..1bf7caf9
--- /dev/null
+++ b/icons/apachemaven.svg
@@ -0,0 +1 @@
+
diff --git a/icons/apachepulsar.svg b/icons/apachepulsar.svg
new file mode 100644
index 00000000..420afe4f
--- /dev/null
+++ b/icons/apachepulsar.svg
@@ -0,0 +1 @@
+
diff --git a/icons/bandsintown.svg b/icons/bandsintown.svg
new file mode 100644
index 00000000..25f5deef
--- /dev/null
+++ b/icons/bandsintown.svg
@@ -0,0 +1 @@
+
diff --git a/icons/bluetooth.svg b/icons/bluetooth.svg
new file mode 100644
index 00000000..3978e9a8
--- /dev/null
+++ b/icons/bluetooth.svg
@@ -0,0 +1 @@
+
diff --git a/icons/brave.svg b/icons/brave.svg
index 4318903f..f65e4c3d 100644
--- a/icons/brave.svg
+++ b/icons/brave.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
diff --git a/icons/bulma.svg b/icons/bulma.svg
new file mode 100644
index 00000000..66f0ebe6
--- /dev/null
+++ b/icons/bulma.svg
@@ -0,0 +1 @@
+
diff --git a/icons/cdprojekt.svg b/icons/cdprojekt.svg
new file mode 100644
index 00000000..dd45c399
--- /dev/null
+++ b/icons/cdprojekt.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/icons/chartmogul.svg b/icons/chartmogul.svg
new file mode 100644
index 00000000..a270b9ae
--- /dev/null
+++ b/icons/chartmogul.svg
@@ -0,0 +1 @@
+
diff --git a/icons/citrix.svg b/icons/citrix.svg
new file mode 100644
index 00000000..e69627de
--- /dev/null
+++ b/icons/citrix.svg
@@ -0,0 +1 @@
+
diff --git a/icons/citroen.svg b/icons/citroen.svg
new file mode 100644
index 00000000..dcfd99d1
--- /dev/null
+++ b/icons/citroen.svg
@@ -0,0 +1 @@
+
diff --git a/icons/claris.svg b/icons/claris.svg
new file mode 100644
index 00000000..b7311244
--- /dev/null
+++ b/icons/claris.svg
@@ -0,0 +1 @@
+
diff --git a/icons/daserste.svg b/icons/daserste.svg
new file mode 100644
index 00000000..e3ac4a9d
--- /dev/null
+++ b/icons/daserste.svg
@@ -0,0 +1 @@
+
diff --git a/icons/discogs.svg b/icons/discogs.svg
new file mode 100644
index 00000000..657ec5f3
--- /dev/null
+++ b/icons/discogs.svg
@@ -0,0 +1 @@
+
diff --git a/icons/douban.svg b/icons/douban.svg
new file mode 100644
index 00000000..9f1e838c
--- /dev/null
+++ b/icons/douban.svg
@@ -0,0 +1 @@
+
diff --git a/icons/emby.svg b/icons/emby.svg
new file mode 100644
index 00000000..5bc6492b
--- /dev/null
+++ b/icons/emby.svg
@@ -0,0 +1 @@
+
diff --git a/icons/fedora.svg b/icons/fedora.svg
index fa20204b..8606a736 100644
--- a/icons/fedora.svg
+++ b/icons/fedora.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
diff --git a/icons/fedramp.svg b/icons/fedramp.svg
new file mode 100644
index 00000000..d899e386
--- /dev/null
+++ b/icons/fedramp.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/icons/flood.svg b/icons/flood.svg
new file mode 100644
index 00000000..bddde490
--- /dev/null
+++ b/icons/flood.svg
@@ -0,0 +1 @@
+
diff --git a/icons/fortinet.svg b/icons/fortinet.svg
new file mode 100644
index 00000000..a813f57a
--- /dev/null
+++ b/icons/fortinet.svg
@@ -0,0 +1 @@
+
diff --git a/icons/googleassistant.svg b/icons/googleassistant.svg
new file mode 100644
index 00000000..b5d4fcd4
--- /dev/null
+++ b/icons/googleassistant.svg
@@ -0,0 +1 @@
+
diff --git a/icons/googlefit.svg b/icons/googlefit.svg
new file mode 100644
index 00000000..50e7d500
--- /dev/null
+++ b/icons/googlefit.svg
@@ -0,0 +1 @@
+
diff --git a/icons/googlelens.svg b/icons/googlelens.svg
new file mode 100644
index 00000000..5603ef2a
--- /dev/null
+++ b/icons/googlelens.svg
@@ -0,0 +1 @@
+
diff --git a/icons/googlemaps.svg b/icons/googlemaps.svg
new file mode 100644
index 00000000..22226cf4
--- /dev/null
+++ b/icons/googlemaps.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/icons/grunt.svg b/icons/grunt.svg
new file mode 100644
index 00000000..93d19307
--- /dev/null
+++ b/icons/grunt.svg
@@ -0,0 +1 @@
+
diff --git a/icons/hellofresh.svg b/icons/hellofresh.svg
new file mode 100644
index 00000000..59025d53
--- /dev/null
+++ b/icons/hellofresh.svg
@@ -0,0 +1 @@
+
diff --git a/icons/iobroker.svg b/icons/iobroker.svg
new file mode 100644
index 00000000..850146b1
--- /dev/null
+++ b/icons/iobroker.svg
@@ -0,0 +1 @@
+
diff --git a/icons/jenkinsx.svg b/icons/jenkinsx.svg
new file mode 100644
index 00000000..a7cc9264
--- /dev/null
+++ b/icons/jenkinsx.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/icons/justeat.svg b/icons/justeat.svg
new file mode 100644
index 00000000..41efe8ae
--- /dev/null
+++ b/icons/justeat.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/icons/keepassxc.svg b/icons/keepassxc.svg
new file mode 100644
index 00000000..df3a3d3a
--- /dev/null
+++ b/icons/keepassxc.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/icons/kyocera.svg b/icons/kyocera.svg
new file mode 100644
index 00000000..77bc7a0d
--- /dev/null
+++ b/icons/kyocera.svg
@@ -0,0 +1 @@
+
diff --git a/icons/lmms.svg b/icons/lmms.svg
new file mode 100644
index 00000000..babac8c0
--- /dev/null
+++ b/icons/lmms.svg
@@ -0,0 +1 @@
+
diff --git a/icons/logmein.svg b/icons/logmein.svg
new file mode 100644
index 00000000..1f8e3ebd
--- /dev/null
+++ b/icons/logmein.svg
@@ -0,0 +1 @@
+
diff --git a/icons/materialdesignicons.svg b/icons/materialdesignicons.svg
new file mode 100644
index 00000000..244d1ebd
--- /dev/null
+++ b/icons/materialdesignicons.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/icons/microsoftedge.svg b/icons/microsoftedge.svg
index 317bfd9b..49a45124 100644
--- a/icons/microsoftedge.svg
+++ b/icons/microsoftedge.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
diff --git a/icons/mocha.svg b/icons/mocha.svg
new file mode 100644
index 00000000..5b2cfbd7
--- /dev/null
+++ b/icons/mocha.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/icons/netapp.svg b/icons/netapp.svg
new file mode 100644
index 00000000..b7fa0fe6
--- /dev/null
+++ b/icons/netapp.svg
@@ -0,0 +1 @@
+
diff --git a/icons/opel.svg b/icons/opel.svg
new file mode 100644
index 00000000..3f0721b4
--- /dev/null
+++ b/icons/opel.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/icons/opslevel.svg b/icons/opslevel.svg
new file mode 100644
index 00000000..d2c7b6f1
--- /dev/null
+++ b/icons/opslevel.svg
@@ -0,0 +1 @@
+
diff --git a/icons/paritysubstrate.svg b/icons/paritysubstrate.svg
new file mode 100644
index 00000000..e1d61c0d
--- /dev/null
+++ b/icons/paritysubstrate.svg
@@ -0,0 +1 @@
+
diff --git a/icons/pixabay.svg b/icons/pixabay.svg
new file mode 100644
index 00000000..1a2ff94d
--- /dev/null
+++ b/icons/pixabay.svg
@@ -0,0 +1 @@
+
diff --git a/icons/polymerproject.svg b/icons/polymerproject.svg
new file mode 100644
index 00000000..41ddc0b0
--- /dev/null
+++ b/icons/polymerproject.svg
@@ -0,0 +1 @@
+
diff --git a/icons/protocols-dot-io.svg b/icons/protocols-dot-io.svg
new file mode 100644
index 00000000..780e15db
--- /dev/null
+++ b/icons/protocols-dot-io.svg
@@ -0,0 +1 @@
+
diff --git a/icons/quest.svg b/icons/quest.svg
new file mode 100644
index 00000000..e87a22c6
--- /dev/null
+++ b/icons/quest.svg
@@ -0,0 +1 @@
+
diff --git a/icons/rhinoceros.svg b/icons/rhinoceros.svg
new file mode 100644
index 00000000..462a26ab
--- /dev/null
+++ b/icons/rhinoceros.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/icons/semanticweb.svg b/icons/semanticweb.svg
new file mode 100644
index 00000000..827995d5
--- /dev/null
+++ b/icons/semanticweb.svg
@@ -0,0 +1 @@
+
diff --git a/icons/skypeforbusiness.svg b/icons/skypeforbusiness.svg
new file mode 100644
index 00000000..aef7bf55
--- /dev/null
+++ b/icons/skypeforbusiness.svg
@@ -0,0 +1 @@
+
diff --git a/icons/slackware.svg b/icons/slackware.svg
new file mode 100644
index 00000000..c2da04b4
--- /dev/null
+++ b/icons/slackware.svg
@@ -0,0 +1 @@
+
diff --git a/icons/sourceforge.svg b/icons/sourceforge.svg
index 9130ca01..97a71dd9 100644
--- a/icons/sourceforge.svg
+++ b/icons/sourceforge.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
diff --git a/icons/theregister.svg b/icons/theregister.svg
new file mode 100644
index 00000000..4942792a
--- /dev/null
+++ b/icons/theregister.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/icons/tide.svg b/icons/tide.svg
new file mode 100644
index 00000000..2182d2f0
--- /dev/null
+++ b/icons/tide.svg
@@ -0,0 +1 @@
+
diff --git a/icons/transportforireland.svg b/icons/transportforireland.svg
new file mode 100644
index 00000000..9be5f9a0
--- /dev/null
+++ b/icons/transportforireland.svg
@@ -0,0 +1 @@
+
diff --git a/icons/wearos.svg b/icons/wearos.svg
new file mode 100644
index 00000000..03a72f45
--- /dev/null
+++ b/icons/wearos.svg
@@ -0,0 +1 @@
+
diff --git a/icons/xamarin.svg b/icons/xamarin.svg
index e5cb4eb2..39667695 100644
--- a/icons/xamarin.svg
+++ b/icons/xamarin.svg
@@ -1 +1 @@
-
+
diff --git a/icons/xampp.svg b/icons/xampp.svg
new file mode 100644
index 00000000..e2d1d1d7
--- /dev/null
+++ b/icons/xampp.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index 0e5d8a5f..e6f9323f 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "simple-icons",
- "version": "2.2.0",
+ "version": "2.3.0",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
@@ -6074,9 +6074,9 @@
}
},
"uglify-js": {
- "version": "3.7.3",
- "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.7.3.tgz",
- "integrity": "sha512-7tINm46/3puUA4hCkKYo4Xdts+JDaVC9ZPRcG8Xw9R4nhO/gZgUM3TENq8IF4Vatk8qCig4MzP/c8G4u2BkVQg==",
+ "version": "3.7.5",
+ "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.7.5.tgz",
+ "integrity": "sha512-GFZ3EXRptKGvb/C1Sq6nO1iI7AGcjyqmIyOw0DrD0675e+NNbGO72xmMM2iEBdFbxaTLo70NbjM/Wy54uZIlsg==",
"dev": true,
"requires": {
"commander": "~2.20.3",
diff --git a/package.json b/package.json
index b4065cc6..00cb8743 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "simple-icons",
- "version": "2.2.0",
+ "version": "2.3.0",
"description": "SVG icons for popular brands https://simpleicons.org",
"homepage": "https://www.simpleicons.org",
"keywords": [
@@ -23,11 +23,12 @@
"jsonlint2": "1.7.1",
"svglint": "1.0.5",
"svgo": "1.3.2",
- "uglify-js": "3.7.3"
+ "uglify-js": "3.7.5"
},
"scripts": {
"build": "node scripts/build-package.js",
"clean": "rm icons/*.js index.js",
+ "our-lint": "node scripts/lint.js",
"jsonlint": "jsonlint _data/simple-icons.json -q -V .jsonlintschema",
"svglint": "svglint icons/* --ci",
"wslint": "editorconfig-checker -exclude *.svg",
diff --git a/scripts/lint.js b/scripts/lint.js
new file mode 100644
index 00000000..f8961634
--- /dev/null
+++ b/scripts/lint.js
@@ -0,0 +1,43 @@
+#!/usr/bin/env node
+/**
+ * @fileoverview Lints for the package that can't be implemented in the existing linters (e.g. jsonlint/svglint)
+ */
+
+const { icons } = require("../_data/simple-icons.json");
+
+/**
+ * Contains our tests so they can be isolated from eachother; I don't think each test is worth its own file
+ * @type {{[k:string]: () => (string|undefined)}}
+ */
+const TESTS = {
+ /** Tests whether our icons are in alphabetical order */
+ alphabetical: function() {
+ const collector = (invalidEntries, icon, index, array) => {
+ if (index > 0) {
+ const prev = array[index - 1];
+ if (icon.title.localeCompare(prev.title) < 0) {
+ invalidEntries.push(icon);
+ }
+ }
+ return invalidEntries;
+ };
+
+ const invalids = icons.reduce(collector, []);
+ if (invalids.length) {
+ return `Some icons aren't in alphabetical order:
+ ${invalids.map(icon => icon.title).join(", ")}`;
+ }
+ }
+};
+
+// execute all tests and log potential errors
+const errors = Object.keys(TESTS)
+ .map(k => TESTS[k]())
+ .filter(Boolean);
+
+if (errors.length) {
+ errors.forEach(error => {
+ console.error(`\u001b[31m${error}\u001b[0m`);
+ });
+ process.exit(1);
+}