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 @@ +Aiqfome icon 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 @@ +Airbus icon \ 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 @@ +Amazon Lumberyard icon \ 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 @@ +AngularJS icon 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 @@ +Apache Ant icon \ 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 @@ +Apache Maven icon 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 @@ +Apache Pulsar icon 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 @@ +Bandsintown icon 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 @@ +Bluetooth icon diff --git a/icons/brave.svg b/icons/brave.svg index 4318903f..f65e4c3d 100644 --- a/icons/brave.svg +++ b/icons/brave.svg @@ -1 +1 @@ -Brave icon \ No newline at end of file +Brave icon 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 @@ +Bulma icon 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 @@ +CD Projekt icon \ 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 @@ +ChartMogul icon 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 @@ +Citrix icon 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 @@ +Citroën icon 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 @@ +Claris icon 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 @@ +Das Erste icon 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 @@ +Discogs icon 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 @@ +Douban icon 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 @@ +Emby icon diff --git a/icons/fedora.svg b/icons/fedora.svg index fa20204b..8606a736 100644 --- a/icons/fedora.svg +++ b/icons/fedora.svg @@ -1 +1 @@ -Fedora icon \ No newline at end of file +Fedora icon 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 @@ +FedRAMP icon \ 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 @@ +Flood icon 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 @@ +Fortinet icon 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 @@ +Google Assistant icon 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 @@ +Google Fit icon 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 @@ +Google Lens icon 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 @@ +Google Maps icon \ 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 @@ +Grunt icon 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 @@ +HelloFresh icon 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 @@ +ioBroker icon 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 @@ +Jenkins X icon \ 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 @@ +Just Eat icon \ 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 @@ +KeePassXC icon \ 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 @@ +Kyocera icon 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 @@ +LMMS icon 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 @@ +LogMeIn icon 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 @@ +Material Design Icons icon \ 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 @@ -Microsoft Edge icon \ No newline at end of file +Microsoft Edge icon 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 @@ +Mocha icon \ 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 @@ +NetApp icon 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 @@ +Opel icon \ 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 @@ +OpsLevel icon 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 @@ +Parity Substrate icon 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 @@ +Pixabay icon 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 @@ +Polymer Project icon 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 @@ +protocols.io icon 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 @@ +Quest icon 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 @@ +Rhinoceros icon \ 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 @@ +Semantic Web icon 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 @@ +Skype for Business icon 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 @@ +Slackware icon diff --git a/icons/sourceforge.svg b/icons/sourceforge.svg index 9130ca01..97a71dd9 100644 --- a/icons/sourceforge.svg +++ b/icons/sourceforge.svg @@ -1 +1 @@ -SourceForge icon \ No newline at end of file +SourceForge icon 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 @@ +The Register icon \ 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 @@ +Tide icon 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 @@ +Transport for Ireland icon 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 @@ +Wear OS icon diff --git a/icons/xamarin.svg b/icons/xamarin.svg index e5cb4eb2..39667695 100644 --- a/icons/xamarin.svg +++ b/icons/xamarin.svg @@ -1 +1 @@ -Xamarin icon +Xamarin icon 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 @@ +XAMPP icon \ 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); +}