Convert simple-icons manual backup from submodule to tracked files

This commit is contained in:
MayaChat
2025-11-24 14:51:23 -05:00
parent 30bbe7a0a4
commit f363db5e47
3467 changed files with 42987 additions and 1 deletions

Submodule logos/simple-icons.manual-backup-20251123-234134 deleted from 3dd8ab9a29

View File

@@ -0,0 +1,18 @@
{
"build": {
"dockerfile": "../Dockerfile",
"context": "..",
"target": "base"
},
"postCreateCommand": "npm ci --no-audit --no-fund",
"customizations": {
"vscode": {
"extensions": [
"EditorConfig.EditorConfig",
"esbenp.prettier-vscode",
"samverschueren.linter-xo",
"davidanson.vscode-markdownlint"
]
}
}
}

View File

@@ -0,0 +1,11 @@
# NodeJS
node_modules/
npm-debug.log
# Build files
/index.js
/index-icons.js
/index.mjs
/index-icons.mjs
/index.d.ts
/sdk.js

View File

@@ -0,0 +1,20 @@
root=true
[*]
charset=utf-8
indent_style=tab
insert_final_newline=true
trim_trailing_whitespace=true
[*.md]
indent_style = space
indent_size=unset
[*.svg]
insert_final_newline=false
[*.yml]
indent_style=space
[.github/**/*.md]
trim_trailing_whitespace=false # Templates with trailing whitespace are more usable

View File

@@ -0,0 +1,13 @@
* text=auto
# SVGs are treated as binary by default
*.svg text
# Don't diff machine generated files
slugs.md -diff
# Don't diff package lock files
package-lock.json -diff
# Don't export/archive these files
.github export-ignore

View File

@@ -0,0 +1,4 @@
contact_links:
- name: Website
about: Issues and improvements for the website
url: https://github.com/simple-icons/simple-icons-website-rs/issues/new?template=website.md

View File

@@ -0,0 +1,34 @@
name: Documentation
description: Report problems and suggest ideas for the documentation
labels: [docs]
body:
- type: markdown
attributes:
value: |
Before opening a new issue, make sure it isn't covered by an existing issue.
Please search for [issues with the `docs` label][docs-issues] (including
closed issues) before you continue.
[docs-issues]: https://github.com/simple-icons/simple-icons/labels/docs
- type: dropdown
attributes:
label: Kind of Issue
description: |
If your issue type is not here, select "other" and explain in the
"Description" field below.
options: [Improvement, Mistake, Other]
validations:
required: true
- type: textarea
attributes:
label: Description
description: |
Include as much detail as possible, for example:
- A (perma)link to the docs in question
- Suggestions for how to change the docs
placeholder: "Example: The documentation doesn't cover my use case of the NPM package..."
validations:
required: true

View File

@@ -0,0 +1,35 @@
name: Icon removal
description: Report an icon for removal
labels: [breaking change]
title: 'Removal: <brand-name>'
body:
- type: markdown
attributes:
value: |
Before opening a new issue, make sure it isn't covered by an existing issue.
Please search for [issues with the `breaking change` label][breaking-issues]
(including closed issues) before you continue. If you find one for the brand
you're reporting then leave a comment on it or add a reaction.
[breaking-issues]: https://github.com/simple-icons/simple-icons/labels/breaking%20change
- type: input
attributes:
label: Brand Name
placeholder: 'Example: Simple Icons'
validations:
required: true
- type: textarea
attributes:
label: Reason for Removal
description: |
- If the brand no longer exists, include a link supporting that claim.
- If the brand should be removed for another reason, explain why.
placeholder: >-
Example: [this blogpost](https://example.com) announced the brand has been discontinued...
validations:
required: true

View File

@@ -0,0 +1,95 @@
name: Icon request
description: Request a new icon for Simple Icons
labels: [new icon, permissions in review]
title: 'Request: <brand-name>'
body:
- type: markdown
attributes:
value: |
We won't add non-brand icons or anything related to illegal services. If in
doubt, open an issue and we'll have a look. For more details see the
[Contributing Guidelines].
Before opening a new issue, make sure it isn't covered by an existing issue.
Please search for [issues with the `new icon` label][new-icon-issues]
(including closed issues) before you continue. If you find one for the brand
you're requesting then leave a comment on it or add a reaction.
> [!TIP]
> In order to view website rankings on `traffic.cv`:
> Go to `https://traffic.cv/website`, enter the website address, and click on Analyze Traffic.
[contributing guidelines]: https://github.com/simple-icons/simple-icons/blob/develop/CONTRIBUTING.md
[new-icon-issues]: https://github.com/simple-icons/simple-icons/issues?q=is%3Aissue+label%3A%22new+icon%22
- type: input
attributes:
label: Brand Name
placeholder: 'Example: Simple Icons'
validations:
required: true
- type: input
attributes:
label: Website
description: |
For non-web brands you can add a relevant link. You can put "None" if you don't
think there's a website.
placeholder: 'Example: https://simpleicons.org'
validations:
required: true
- type: textarea
attributes:
label: Popularity Metric
description: |
Provide either a [Traffic.cv rank], which must be in the top 500,000 to qualify,
or failing that another metric from [our contributing guidelines] that we can
use to assess the popularity of the requested brand.
[Traffic.cv rank]: https://traffic.cv
[our contributing guidelines]: https://github.com/simple-icons/simple-icons/blob/develop/CONTRIBUTING.md#assessing-popularity
placeholder: 'Example: The Traffic.cv rank is 261,758. See https://traffic.cv/simpleicons.org'
validations:
required: true
- type: checkboxes
attributes:
label: Forbidden Brands
options:
- label: I have reviewed the list of [forbidden brands](https://github.com/simple-icons/simple-icons/blob/develop/CONTRIBUTING.md#forbidden-brands) and can confirm the brand I am requesting is not one of them, nor is it a subsidiary of one of them.
required: true
- type: input
attributes:
label: Terms of Service
description: |
A lot of websites specify whether or not we can use their brand assets in their Terms of Service.
Please ensure you include the link here where relevant.
validations:
required: true
- type: textarea
attributes:
label: Official Resources for Icon and Color
description: |
Media kits, brand guidelines, SVG files, etc. You can set
this to "None" if you are unable to find any resources.
placeholder: |
Example:
- SVG: https://github.com/simple-icons/simple-icons/blob/develop/icons/simpleicons.svg
- Color: `#111111`, from the website header
validations:
required: true
- type: textarea
attributes:
label: Additional Comments
description: |
Is there anything else we should know about the brand? Remember that not everyone knows the brand as well as you do. For example:
- Are there multiple options for the logo and/or color?
- Is the icon released under a license?
- If you think the brand might not be accepted, why do you think it should be considered?
placeholder: 'Example: There are two variants of this icon...'

View File

@@ -0,0 +1,53 @@
name: Icon update
description: Help us improve by reporting outdated icons
labels: [update icon/data, permissions in review]
title: 'Update: <brand-name>'
body:
- type: markdown
attributes:
value: |
Before opening a new issue, make sure it isn't covered by an existing issue.
Please search for [issues with the `update icon/data` label][update-icon-data-issues]
(including closed issues) before you continue. If you find one for the brand
you're reporting then leave a comment on it or add a reaction.
[update-icon-data-issues]: https://github.com/simple-icons/simple-icons/labels/update%20icon/data
- type: input
attributes:
label: Brand Name
placeholder: 'Example: Simple Icons'
validations:
required: true
- type: input
attributes:
label: Terms of Service
description: |
A lot of websites specify whether or not we can use their brand assets in their Terms of Service.
Please ensure you include the link here where relevant.
validations:
required: true
- type: textarea
attributes:
label: Official Resources for Icon and Color
description: |
Media kits, brand guidelines, SVG files, etc. You can set
this to "None" if you are unable to find any resources.
placeholder: |
Example:
svg: https://github.com/simple-icons/simple-icons/blob/develop/icons/simpleicons.svg
color: `#111111`, from the website header
validations:
required: true
- type: textarea
attributes:
label: Additional Comments
description: |
Is there anything else we should know about the brand? Remember that not everyone knows the brand as well as you do. For example:
- Are there multiple options for the logo and/or color?
- Is the icon released under a license?
placeholder: 'Example: There are two variants of this icon...'

View File

@@ -0,0 +1,63 @@
name: Packages
description: Report problems and suggest ideas for the NPM and Packagist packages
labels: [package]
body:
- type: markdown
attributes:
value: |
Before opening a new issue, make sure it isn't covered by an existing issue.
Please search for [issues with the `package` label][package-issues] (including
closed issues) before you continue.
[package-issues]: https://github.com/simple-icons/simple-icons/labels/package
- type: dropdown
attributes:
label: Kind of Issue
description: |
If your issue type is not here, select "other" and explain in the
"Description" field below.
options: [Bug, Feature, Performance, Other]
validations:
required: true
- type: dropdown
attributes:
label: This issue concerns the...
options: [NPM package, Packagist package]
multiple: true
validations:
required: true
- type: input
attributes:
label: Package Version
placeholder: 'Example: 5.11.0'
validations:
required: true
- type: textarea
attributes:
label: Other Software
description: |
The software that you are using the package with (Node.js & NPM, PHP & Packagist,
Browser(s), other) and their versions. You can put "None" if you are unsure.
placeholder: |
Example:
Node.js v16
Chrome 92.0.4515.159 (Official Build) (64-bit)
validations:
required: true
- type: textarea
attributes:
label: Description
description: |
Anything relevant, for example:
- For bugs: "Steps to reproduce" and "Expected behavior"
- For feature requests: An example of a use case
- For performance: An example where performance is poor
placeholder: 'Example: The NPM package does not work for my use case...'
validations:
required: true

View File

@@ -0,0 +1,39 @@
<!--
Before opening your pull request, have a quick look at our contribution guidelines:
https://github.com/simple-icons/simple-icons/blob/develop/CONTRIBUTING.md
Consider adding a preview image of your submission using:
https://simpleicons.org/preview
-->
**Issue:** closes #
**Popularity metric:**
<!--
Regardless of whether or not the linked issue (if there is one) has a metric, please include the metric here for PR reviewers to validate. See our contributing guidelines at https://github.com/simple-icons/simple-icons/blob/develop/CONTRIBUTING.md#assessing-popularity for more details on how we assess a brand's popularity.
-->
**Terms of Service link:**
<!--
As part of the checklist below, you acknowledge you have reviewed the terms of service of a brand, to ensure we are granted permission to include this brand. Please link here to the terms you have reviewed, to make maintainer review easier. Ideally link to a section and/or paragraph.
-->
### Checklist
- [ ] I have reviewed the [forbidden brands](https://github.com/simple-icons/simple-icons/blob/develop/CONTRIBUTING.md#forbidden-brands) list and confirm the brand I am submitting a PR for is not one of them, nor is it a subsidiary of one of those brands
- [ ] I have reviewed the brand's terms of service, and am confident we can add this icon
- [ ] I updated the JSON data in `data/simple-icons.json`
- [ ] I optimized the icon with SVGO or SVGOMG
- [ ] The SVG `viewbox` is `0 0 24 24`
### Description
<!--
Anything relevant, for example:
- Why did you pick the hex value?
- Did you manually vectorize the logo?
- Have you used multiple sources?
- etc.
-->

View File

@@ -0,0 +1,31 @@
# When working in a fork, some workflows should not be executed
# as they do not have the necessary permissions. This causes
# them to fail and only serve to generate noise for people
# watching the fork's activity.
name: Check if running in a fork
description: Check if a workflow is running in a forked repository and set an output accordingly.
inputs:
in-fork-message:
description: Message to display when the workflow is running in a fork.
required: true
outputs:
is-fork:
description: Indicates if the current repository is a fork.
value: ${{ steps.check-is-fork.outputs.is-fork }}
runs:
using: composite
steps:
- id: check-is-fork
shell: bash
env:
IN_FORK_MESSAGE: ${{ inputs.in-fork-message }}
run: |
if [ "${{ github.repository_owner }}" != "simple-icons" ]; then
echo "is-fork=true" >> $GITHUB_OUTPUT
echo "$IN_FORK_MESSAGE"
else
echo "is-fork=false" >> $GITHUB_OUTPUT
fi

View File

@@ -0,0 +1,25 @@
name: Get issue/pull request labels
description: Get the current labels of an issue or pull request
inputs:
issue_number:
description: Issue or pull request number to get labels from
required: true
github-token:
description: GitHub token used to authenticate with the GitHub API
required: true
outputs:
labels:
description: Labels of the issue or pull request
value: ${{ steps.get-labels.outputs.labels }}
runs:
using: composite
steps:
- id: get-labels
shell: sh
env:
GH_TOKEN: ${{ inputs.github-token }}
run: |
labels="$(gh api 'repos/simple-icons/simple-icons/issues/${{ inputs.issue_number }}' --jq '.labels.[].name' | tr '\n' ',')"
echo "labels=$labels" >> $GITHUB_OUTPUT

View File

@@ -0,0 +1,16 @@
name: Get version
description: Get the current version of the project
outputs:
version:
description: The version of the project
value: ${{ steps.get-version.outputs.version }}
runs:
using: composite
steps:
- id: get-version
shell: sh
run: |
version="$(grep version -m 1 -i package.json | cut -d '"' -f4)"
echo "version=$version" >> $GITHUB_OUTPUT

View File

@@ -0,0 +1,38 @@
new icon:
- any: [icons/*.svg]
status: added
update icon/data:
- any: [icons/*.svg]
status: modified
- all: [data/simple-icons.json]
status: modified
breaking change:
- any: [icons/*.svg]
status: removed
docs:
- any: ['*.md']
status: modified
meta:
- any:
[
'.github/*',
'scripts/*',
'tests/*',
'.husky/*',
'*.mjs',
'*.d.ts',
'*.json',
'*.toml',
'*',
]
status: modified
dependencies:
- all: ['package-lock.json']
status: modified
permissions in review:
- any: [icons/*.svg]
status: added
- any: [icons/*.svg]
status: modified
- all: [data/simple-icons.json]
status: modified

View File

@@ -0,0 +1,27 @@
{
repositories: ['simple-icons/simple-icons'],
extends: [
'config:recommended',
// Make sure we get a single PR combining all updates
'group:all',
],
// Disable Dependency Dashboard
dependencyDashboard: false,
// Use our labelling system
labels: ['dependencies'],
// We generally always want the major version
separateMajorMinor: false,
// We manually update digest dependencies (eg. hashes in GitHub Actions)
digest: {enabled: false},
// PR title and commit message when updating dependencies
commitMessage: 'Update dependencies',
// Simplify PR body when updating dependencies
prBodyTemplate: '{{{header}}}{{{table}}}{{{warnings}}}{{{notes}}}{{{changelogs}}}',
}

View File

@@ -0,0 +1,160 @@
name: Add Pull Request Labels and Assign to Project
on:
pull_request_target:
types: [opened, closed]
jobs:
add-labels:
permissions:
contents: read
pull-requests: write
issues: write
runs-on: ubuntu-latest
if: |
github.event.action == 'opened' &&
github.event.pull_request.base.ref != 'master'
steps:
- uses: actions/create-github-app-token@v2
id: app-token
with:
app-id: ${{ vars.BOT_APP_ID }}
private-key: ${{ secrets.BOT_PRIVATE_KEY }}
- uses: simple-icons/labeler@v1
with:
repo-token: ${{ steps.app-token.outputs.token }}
# TODO: The next job has been temporarily disabled until the maintainers
# team decide to use projects board again.
# assign-to-project:
# runs-on: ubuntu-latest
# name: Assign to Project
# if: |
# github.event.action == 'opened' &&
# github.event.pull_request.base.ref != 'master'
# needs: add-labels
# steps:
# - uses: actions/create-github-app-token@v1
# id: app-token
# with:
# app-id: ${{ vars.BOT_APP_ID }}
# private-key: ${{ secrets.BOT_PRIVATE_KEY }}
# - name: Checkout
# uses: actions/checkout@v5
# - id: get-labels
# uses: ./.github/actions/get-labels
# with:
# issue_number: ${{ github.event.pull_request.number }}
# github-token: ${{ secrets.GITHUB_TOKEN }}
# - id: get-si-members
# name: Get simple-icons members
# run: |
# members="$(curl -H 'Authorization: Bearer ${{ steps.app-token.outputs.token }}' --retry 5 -s https://api.github.com/orgs/simple-icons/members | jq .[].login | tr '\n' ',' | sed -e 's/"//g' -e 's/,$//')"
# echo "members=$members" >> $GITHUB_OUTPUT
# - id: get-linked-issues
# name: Get linked issue numbers
# uses: mondeja/pr-linked-issues-action@v2
# with:
# # Lazy linked issues. If one of the lines of the pull request body
# # matches one of the next contents, the matching issue number will
# # be added to `issues` output:
# add_links_by_content: |
# **Issue:** #{issue_number}
# **Issue**: #{issue_number}
# **Close:** #{issue_number}
# **Close**: #{issue_number}
# **Closes:** #{issue_number}
# **Closes**: #{issue_number}
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# - id: priority-1
# name: Assign `update icon/data` pull requests to "Priority 1"
# uses: srggrs/assign-one-project-github-action@1.3.1
# env:
# MY_GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
# if: contains(steps.get-labels.outputs.labels, 'update icon/data')
# with:
# project: https://github.com/orgs/simple-icons/projects/2
# column_name: Priority 1
# - id: priority-2
# name: Assign `new icon` pull requests to "Priority 2"
# uses: srggrs/assign-one-project-github-action@1.3.1
# env:
# MY_GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
# # the PR has the `new icon` label along with a linked issue and
# # the opener is not a member of simple-icons organization
# if: |
# contains(steps.get-labels.outputs.labels, 'new icon') &&
# join(steps.get-linked-issues.outputs.issues) != '' &&
# contains(steps.get-si-members.outputs.members, github.event.pull_request.user.login) == false
# with:
# project: https://github.com/orgs/simple-icons/projects/2
# column_name: Priority 2
# - id: priority-3
# name: Assign `new icon` pull requests by maintainers to "Priority 3"
# uses: srggrs/assign-one-project-github-action@1.3.1
# env:
# MY_GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
# # the PR has the `new icon` label along with a linked issue and
# # the opener is a member of the simple-icons organisation
# if: |
# contains(steps.get-labels.outputs.labels, 'new icon') &&
# join(steps.get-linked-issues.outputs.issues) != '' &&
# contains(steps.get-si-members.outputs.members, github.event.pull_request.user.login) == true
# with:
# project: https://github.com/orgs/simple-icons/projects/2
# column_name: Priority 3
# - id: priority-4
# name: Assign `new icon` pull requests by maintainers without an issue to "Priority 4"
# uses: srggrs/assign-one-project-github-action@1.3.1
# env:
# MY_GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
# # the PR has the `new icon` label but with no linked issue and
# # the opener is a member of the simple-icons organisation
# if: |
# contains(steps.get-labels.outputs.labels, 'new icon') &&
# join(steps.get-linked-issues.outputs.issues) == '' &&
# contains(steps.get-si-members.outputs.members, github.event.pull_request.user.login) == true
# with:
# project: https://github.com/orgs/simple-icons/projects/2
# column_name: Priority 4
# - name: Assign pull requests to "Unprioritised"
# uses: srggrs/assign-one-project-github-action@1.3.1
# env:
# MY_GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
# if: |
# steps.priority-1.conclusion == 'skipped' &&
# steps.priority-2.conclusion == 'skipped' &&
# steps.priority-3.conclusion == 'skipped' &&
# steps.priority-4.conclusion == 'skipped'
# with:
# project: https://github.com/orgs/simple-icons/projects/2
# column_name: Unprioritised
# unassign-from-project:
# runs-on: ubuntu-latest
# name: Unassign from Project
# if: |
# github.event.action != 'opened' &&
# github.event.pull_request.merged == false &&
# github.event.pull_request.base.ref != 'master'
# steps:
# - uses: actions/create-github-app-token@v1
# id: app-token
# with:
# app-id: ${{ vars.BOT_APP_ID }}
# private-key: ${{ secrets.BOT_PRIVATE_KEY }}
# - name: Assign closed pull requests to "Completed or Abandoned"
# uses: srggrs/assign-one-project-github-action@1.3.1
# env:
# MY_GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
# with:
# project: https://github.com/orgs/simple-icons/projects/2
# column_name: Completed or Abandoned

View File

@@ -0,0 +1,23 @@
name: Autocloser
on:
issues:
types: [opened]
jobs:
run:
runs-on: ubuntu-latest
permissions:
issues: write
steps:
- uses: actions/create-github-app-token@v2
id: app-token
with:
app-id: ${{ vars.BOT_APP_ID }}
private-key: ${{ secrets.BOT_PRIVATE_KEY }}
- name: Checkout
uses: actions/checkout@v5
- name: Autoclose Issues
run: node scripts/autoclose-issues/autoclose.app.js
env:
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
ISSUE_NUMBER: ${{ github.event.issue.number }}

View File

@@ -0,0 +1,101 @@
name: Create Release Pull Request
on:
# THIS WORKFLOW SHOULD NEVER BE TRIGGERED ON A PUSH EVENT. IF TRIGGERED ON A
# PUSH EVENT IT MAY CREATE AN ENDLESS STREAM OF 'version bump' COMMITS.
workflow_dispatch:
schedule:
# "At 00:00 on Sunday" (https://crontab.guru/once-a-week)
- cron: '0 0 * * 0'
# This Workflow can be triggered manually through the GitHub UI or API. For the
# API use the following request:
# curl -X POST \
# -H "Authorization: Bearer <token>" \
# -d '{"ref":"develop"}' \
# https://api.github.com/repos/simple-icons/simple-icons/actions/workflows/create-release.yml/dispatches
# Replacing <token> by a personal access token with scope `public_repo`
jobs:
check-is-fork:
name: Check if running in a fork
runs-on: ubuntu-latest
permissions: {}
outputs:
is-fork: ${{ steps.check.outputs.is-fork }}
steps:
- uses: actions/checkout@v5
- uses: ./.github/actions/check-is-fork
id: check
with:
in-fork-message: 'Create Release Pull Request workflow only can run in the main repository, skipping.'
release-pr:
runs-on: ubuntu-latest
needs: check-is-fork
permissions:
contents: read
pull-requests: write
issues: write
if: |
github.event_name != 'push' &&
needs.check-is-fork.outputs.is-fork != 'true'
outputs:
did-create-pr: ${{ steps.release.outputs.did-create-pr }}
new-version: ${{ steps.release.outputs.new-version }}
steps:
- uses: actions/create-github-app-token@v2
id: app-token
with:
app-id: ${{ vars.BOT_APP_ID }}
private-key: ${{ secrets.BOT_PRIVATE_KEY }}
- uses: simple-icons/release-action@v3
id: release
with:
repo-token: ${{ steps.app-token.outputs.token }}
version-bump:
runs-on: ubuntu-latest
needs: release-pr
permissions:
contents: write
if: |
github.event_name != 'push' &&
needs.release-pr.outputs.did-create-pr == 'true'
steps:
- uses: actions/create-github-app-token@v2
id: app-token
with:
app-id: ${{ vars.BOT_APP_ID }}
private-key: ${{ secrets.BOT_PRIVATE_KEY }}
- name: Checkout
uses: actions/checkout@v5
with:
# Ensure the commit can be pushed regardless of branch protections (must belong to an admin of this repo)
token: ${{ steps.app-token.outputs.token }}
# Ensure we are checked out on the develop branch
ref: develop
- name: Use Node.js
uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: npm
cache-dependency-path: '**/package-lock.json'
- name: Bump version
run: |
npm version --no-commit-hooks --no-git-tag-version \
"${{ needs.release-pr.outputs.new-version }}"
- name: Install dependencies
run: npm ci --no-audit --no-fund
- name: Update major version in CDN URLs
run: node scripts/release/update-cdn-urls.js
- name: Update SVGs count milestone
run: node scripts/release/update-svgs-count.js
- name: Update slugs table
run: node scripts/release/update-slugs-table.js
- name: Update SDK Typescript definitions
run: node scripts/release/update-sdk-ts-defs.js
- name: Commit version bump
uses: stefanzweifel/git-auto-commit-action@v7
with:
commit_message: Bump version
commit_user_name: 'simple-icons[bot]'
commit_user_email: 'simple-icons[bot]@users.noreply.github.com'
commit_author: 'simple-icons[bot] <simple-icons[bot]@users.noreply.github.com>'

View File

@@ -0,0 +1,20 @@
name: Merge Release Pull Request
on:
pull_request_review:
types: [submitted]
jobs:
release:
runs-on: ubuntu-latest
if: contains(github.event.pull_request.labels.*.name, 'release')
permissions:
pull-requests: write
steps:
- uses: actions/create-github-app-token@v2
id: app-token
with:
app-id: ${{ vars.BOT_APP_ID }}
private-key: ${{ secrets.BOT_PRIVATE_KEY }}
- uses: simple-icons/release-action@v3
with:
repo-token: ${{ steps.app-token.outputs.token }}

View File

@@ -0,0 +1,149 @@
name: Publish Releases
on:
push:
branches:
- master
jobs:
sanity-check:
name: Pre-publish checks
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Use Node.js
uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: npm
cache-dependency-path: '**/package-lock.json'
- name: Install dependencies
run: npm ci --no-audit --no-fund
- name: Run linters
run: npm run lint
- name: Build NodeJS package
run: npm run build
- name: Run tests
run: npm run test
npm:
name: NPM Package
needs: sanity-check
runs-on: ubuntu-latest
permissions:
contents: read
id-token: write # for OIDC authentication
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Use Node.js
uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: npm
cache-dependency-path: '**/package-lock.json'
- id: get-version
uses: ./.github/actions/get-version
- name: Install dependencies
run: npm ci --no-audit --no-fund
- name: Reformat to regular markdown
run: node scripts/release/reformat-markdown.js "${{ steps.get-version.outputs.version }}"
- name: Update SDK Typescript definitions
run: node scripts/release/update-sdk-ts-defs.js
- name: Minify icons data file
run: node scripts/release/minify-icons-data.js
- name: Build NodeJS package
run: npm run build
- name: Deploy to NPM
run: npm publish
github:
name: GitHub release
needs: sanity-check
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/create-github-app-token@v2
id: app-token
with:
app-id: ${{ vars.BOT_APP_ID }}
private-key: ${{ secrets.BOT_PRIVATE_KEY }}
- name: Checkout
uses: actions/checkout@v5
- name: Get commit message (for release title and body)
id: commit
uses: kceb/git-message-action@v3
- id: get-version
uses: ./.github/actions/get-version
- name: Reformat to regular markdown
run: node scripts/release/reformat-markdown.js "${{ steps.get-version.outputs.version }}"
- name: Configure GIT credentials
run: |
git config user.name "simple-icons[bot]"
git config user.email "simple-icons[bot]@users.noreply.github.com"
# Commit that will only be included in the tag
- name: Commit CDN theme image links removal
run: |
git add README.md
git commit -m 'Replace README CDN theme image links'
- name: Create and push git tag
run: |
set -e
tag="${{ steps.get-version.outputs.version }}"
git tag -a "${tag}" -m "$GIT_MESSAGE"
git push origin "${tag}"
env:
GIT_MESSAGE: ${{ steps.commit.outputs.git-message }}
- name: Create release
uses: softprops/action-gh-release@v2
env:
GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
with:
tag_name: ${{ steps.get-version.outputs.version }}
name: ${{ steps.commit.outputs.title }}
body: ${{ steps.commit.outputs.body }}
- name: Send release to Discord
run: node scripts/release/discord-release-message.js "${{ steps.get-version.outputs.version }}"
env:
DISCORD_RELEASES_ROLE_ID: ${{ secrets.DISCORD_RELEASES_ROLE_ID }}
DISCORD_RELEASES_WEBHOOK_URL: ${{ secrets.DISCORD_RELEASES_WEBHOOK_URL }}
continue-on-error: true
font:
name: Trigger simple-icons-font release
needs: npm
runs-on: ubuntu-latest
permissions:
actions: write
steps:
- uses: actions/create-github-app-token@v2
id: app-token
with:
app-id: ${{ vars.BOT_APP_ID }}
private-key: ${{ secrets.BOT_PRIVATE_KEY }}
repositories: 'simple-icons-font'
- name: Trigger simple-icons-font release
run: |
curl -X POST \
-H "Authorization: Bearer ${{ steps.app-token.outputs.token }}" \
-d '{"ref":"develop"}' \
https://api.github.com/repos/simple-icons/simple-icons-font/actions/workflows/auto-release.yml/dispatches
website:
name: Trigger simpleicons.org website update
needs: npm
runs-on: ubuntu-latest
permissions:
actions: write
steps:
- uses: actions/create-github-app-token@v2
id: app-token
with:
app-id: ${{ vars.BOT_APP_ID }}
private-key: ${{ secrets.BOT_PRIVATE_KEY }}
repositories: 'simple-icons-website-rs'
- name: Trigger simpleicons.org website update
run: |
curl -X POST \
-H "Authorization: Bearer ${{ steps.app-token.outputs.token }}" \
-d '{"ref":"master"}' \
https://api.github.com/repos/simple-icons/simple-icons-website-rs/actions/workflows/auto-release.yml/dispatches

View File

@@ -0,0 +1,79 @@
name: Remove Outdated Labels
on:
pull_request_target:
types:
- closed
issues:
types:
- closed
permissions:
issues: write
pull-requests: write
jobs:
remove-merged-pr-labels:
name: Remove merged pull request labels
if: github.event.pull_request.merged
runs-on: ubuntu-latest
steps:
- uses: actions/create-github-app-token@v2
id: app-token
with:
app-id: ${{ vars.BOT_APP_ID }}
private-key: ${{ secrets.BOT_PRIVATE_KEY }}
- uses: mondeja/remove-labels-gh-action@v2
with:
token: ${{ steps.app-token.outputs.token }}
labels: |
assessing
awaiting reply
duplicate
in discussion
invalid
out of scope
pending
permission in review
permission required
won't add
remove-closed-pr-labels:
name: Remove closed pull request labels
if: |
github.event_name == 'pull_request_target' &&
(!github.event.pull_request.merged)
runs-on: ubuntu-latest
steps:
- uses: actions/create-github-app-token@v2
id: app-token
with:
app-id: ${{ vars.BOT_APP_ID }}
private-key: ${{ secrets.BOT_PRIVATE_KEY }}
- uses: mondeja/remove-labels-gh-action@v2
with:
token: ${{ steps.app-token.outputs.token }}
labels: |
in discussion
pending
assessing
permission in review
remove-closed-issue-labels:
name: Remove closed issue labels
if: github.event.issue.state == 'closed'
runs-on: ubuntu-latest
steps:
- uses: actions/create-github-app-token@v2
id: app-token
with:
app-id: ${{ vars.BOT_APP_ID }}
private-key: ${{ secrets.BOT_PRIVATE_KEY }}
- uses: mondeja/remove-labels-gh-action@v2
with:
token: ${{ steps.app-token.outputs.token }}
labels: |
in discussion
pending
assessing
permission in review

View File

@@ -0,0 +1,50 @@
name: Renovate
on:
schedule:
- cron: '0 0 1 5,11 *'
workflow_dispatch:
jobs:
check-is-fork:
name: Check if running in a fork
runs-on: ubuntu-latest
permissions: {}
outputs:
is-fork: ${{ steps.check.outputs.is-fork }}
steps:
- uses: actions/checkout@v5
- uses: ./.github/actions/check-is-fork
id: check
with:
in-fork-message: 'Renovate workflow only can run in the main repository, skipping.'
renovate:
runs-on: ubuntu-latest
needs: check-is-fork
if: needs.check-is-fork.outputs.is-fork != 'true'
timeout-minutes: 15
permissions:
contents: write
issues: write
pull-requests: write
checks: write
statuses: write
steps:
- uses: actions/create-github-app-token@v2
id: app-token
with:
app-id: ${{ vars.BOT_APP_ID }}
private-key: ${{ secrets.BOT_PRIVATE_KEY }}
- name: Checkout
uses: actions/checkout@v5
- name: Setup node
uses: actions/setup-node@v6
with:
node-version-file: .node-version
- name: Renovate
uses: renovatebot/github-action@v43.0.19
with:
configurationFile: .github/renovate.json5
token: ${{ steps.app-token.outputs.token }}
env:
LOG_LEVEL: debug

View File

@@ -0,0 +1,124 @@
name: Verify Source
on:
pull_request:
push:
branches:
- master
- develop
jobs:
build:
name: Build package
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Use Node.js
uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: npm
cache-dependency-path: '**/package-lock.json'
- name: Install dependencies
run: npm ci --no-audit --no-fund
- name: Build NodeJS package
run: npm run build
lint:
name: Lint
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: read
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Use Node.js
uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: npm
cache-dependency-path: '**/package-lock.json'
- name: Is normal pull request
# check if is not a release pull request
id: pr
run: echo "is_normal=$(echo ${{ github.base_ref != 'master' && github.event_name == 'pull_request' && contains(github.event.pull_request.labels.*.name, 'meta') == false }})" >> $GITHUB_OUTPUT
- name: Detect changed files
uses: dorny/paths-filter@v3
id: changes
with:
list-files: shell
filters: |
docs:
- '*!(slugs).md'
- '.github/**.md'
icons:
- 'icons/*.svg'
slugs:
- 'slugs.md'
sdkts:
- 'sdk.d.ts'
token: ${{ secrets.GITHUB_TOKEN }}
- name: Don't edit slugs.md in pull requests
if: steps.pr.outputs.is_normal == 'true' && steps.changes.outputs.slugs == 'true'
run: |
echo -ne "Detected slugs.md file edition in PR.\n" 1>&2
echo -ne "Please revert it, we build the slugs.md" 1>&2
echo -ne " file automatically at releases.\n" 1>&2
exit 1
- name: Don't edit sdk.d.ts in pull requests
if: steps.pr.outputs.is_normal == 'true' && steps.changes.outputs.sdkts == 'true'
run: |
echo -ne "Detected sdk.d.ts file edition in PR.\n" 1>&2
echo -ne "Please revert it, we build the sdk.d.ts" 1>&2
echo -ne " file automatically at releases.\n" 1>&2
exit 1
- name: Install dependencies
run: npm ci --no-audit --no-fund
- name: Prepare icons
if: steps.pr.outputs.is_normal == 'true' && steps.changes.outputs.icons == 'true'
run: sed -i 's/\\"icons\/\*\.svg\\"/$npm_config_icons/' package.json
- name: Prepare docs (docs changed)
# only lint changed docs
if: steps.pr.outputs.is_normal == 'true' && steps.changes.outputs.docs == 'true'
run: sed -i "s/'\*\*\/\*\.md'/"'$npm_config_docs'"/" package.json
- name: Prepare docs (no docs changed)
# only lint README.md if no changes in docs
if: steps.pr.outputs.is_normal == 'true' && steps.changes.outputs.docs != 'true'
run: sed -i "s/'\*\*\/\*\.md'/README.md/" package.json
- name: Run linter
run: npm run lint --icons="$ICONS_FILES" --docs="$DOCS_FILES"
env:
ICONS_FILES: ${{ steps.changes.outputs.icons_files }}
DOCS_FILES: ${{ steps.changes.outputs.docs_files }}
# Authorise GitHub API requests for editorconfig-checker
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Check documentation links
if: steps.changes.outputs.docs == 'true'
uses: lycheeverse/lychee-action@v2
with:
args: -- ${{ steps.changes.outputs.docs_files }}
fail: ${{ github.ref != 'refs/heads/develop' }}
failIfEmpty: false
jobSummary: true
format: markdown
token: ${{ secrets.GITHUB_TOKEN }}
test:
name: Test package
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Use Node.js
uses: actions/setup-node@v6
with:
node-version-file: .node-version
cache: npm
cache-dependency-path: '**/package-lock.json'
- name: Install dependencies
run: npm ci --no-audit --no-fund
- name: Run tests
run: npm run test

View File

@@ -0,0 +1,60 @@
# Editor configurations
.vscode
.idea
# Files generated by build script
/index.js
/index-icons.js
/index.mjs
/index-icons.mjs
/index.d.ts
/sdk.js
# Ignore all files in the icons folder
icons/*
# Except SVG files
!icons/*.svg
### NodeJS ###
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*
yarn.lock
# Dependency directories
node_modules/
# Generated files
*.tgz
### macOS ###
# General
.DS_Store
.AppleDouble
.LSOverride
# Icon must end with two \r
Icon
# Thumbnails
._*
# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent
# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

View File

@@ -0,0 +1,21 @@
#!/usr/bin/env sh
# ^^^^^^^^^^^^^^^ Husky doesn't require this shebang,
# but code editors need it to recognize the file as a script.
# Format and add the changes to the staging area
npm run format
git add --update
# POSIX shell (sh) run time parameters.
# -e: Exit immediately if a command exits with a non-zero status.
# -u: Treat unset variables as errors when substituting.
set -eu
# Track exit code in case that we want to add other lints in the future
EXITCODE=0
# If there are changed icons, lint them with SVGLint
changed_icons=$(git diff --cached --name-only --diff-filter=ACM 'icons/' | xargs)
[ -n "$changed_icons" ] && { npm run svglint:base -- $changed_icons || EXITCODE=$?; }
exit $EXITCODE

View File

@@ -0,0 +1,167 @@
{
"title": "Simple Icons",
"definitions": {
"brand": {
"$id": "#brand",
"description": "A single brand",
"type": "object",
"required": ["title", "hex", "source"],
"properties": {
"title": {
"$ref": "#/definitions/title"
},
"slug": {
"$ref": "#/definitions/slug"
},
"hex": {
"description": "The brand color",
"$ref": "#/definitions/hex"
},
"source": {
"description": "The website from which the icon was sourced",
"$ref": "#/definitions/sourceUrl"
},
"guidelines": {
"description": "The brand guidelines",
"$ref": "#/definitions/url"
},
"aliases": {
"description": "The aliases for the brand",
"type": "object",
"properties": {
"aka": {
"description": "The brand is also known as (e.g. full length name or abbreviation)",
"type": "array",
"items": {"type": "string"},
"uniqueItems": true
},
"dup": {
"description": "Different brands that use the exact same icon",
"type": "array",
"items": {"$ref": "#/definitions/duplicate"},
"uniqueItems": true
},
"loc": {
"description": "Localized names of the brand",
"$ref": "#/definitions/locale"
},
"old": {
"description": "Old names, for backwards compatibility",
"type": "array",
"items": {"type": "string"},
"uniqueItems": true
}
},
"minProperties": 1,
"additionalProperties": false
},
"license": {
"description": "The license for the icon",
"oneOf": [
{
"type": "object",
"required": ["type"],
"properties": {
"type": {
"description": "An SPDX License Identifier",
"type": "string"
}
},
"additionalProperties": false
},
{
"type": "object",
"required": ["type", "url"],
"properties": {
"type": {
"description": "Custom license type",
"const": "custom"
},
"url": {
"description": "The URL to the license text by the brand",
"$ref": "#/definitions/url"
}
},
"additionalProperties": false
}
]
}
},
"additionalProperties": false
},
"duplicate": {
"$id": "#duplicate",
"description": "A brand that uses the same icon",
"type": "object",
"required": ["title"],
"properties": {
"title": {
"$ref": "#/definitions/title"
},
"slug": {
"$ref": "#/definitions/slug"
},
"hex": {
"description": "The brand color, if different from the original",
"$ref": "#/definitions/hex"
},
"source": {
"description": "The website from which the duplicate's hex was sourced, if different from the original",
"$ref": "#/definitions/url"
},
"guidelines": {
"description": "The brand guidelines, if different from the original",
"$ref": "#/definitions/url"
},
"loc": {
"description": "Localized names of the brand",
"$ref": "#/definitions/locale"
}
},
"additionalProperties": false
},
"hex": {
"$id": "#hex",
"description": "A 6-character hexadecimal color value (without #)",
"type": "string",
"pattern": "^[0-9A-F]{6}$"
},
"locale": {
"$id": "#locale",
"description": "A localized brand name",
"type": "object",
"patternProperties": {
"^[a-z]{2}-[A-Z]{2}$": {
"type": "string",
"description": "The local name of the brand"
}
},
"minProperties": 1,
"additionalProperties": false
},
"slug": {
"$id": "#slug",
"description": "The brand name slug (used as filename in icons/)",
"type": "string",
"pattern": "^[a-z0-9]+(_[a-z0-9]+)?$"
},
"title": {
"$id": "#title",
"description": "The name of the brand",
"type": "string"
},
"sourceUrl": {
"$id": "#sourceUrl",
"description": "URL for icon source. If is a GitHub URL, is validated to contain a commit hash, to be an issue comment or to be a GitHub organization URL",
"$ref": "#/definitions/url"
},
"url": {
"$id": "#url",
"description": "HTTPS-only URL for a source",
"type": "string",
"pattern": "^https://[^\\s]+$"
}
},
"type": "array",
"items": {"$ref": "#/definitions/brand"}
}

View File

@@ -0,0 +1,6 @@
{
"default": true,
"MD013": false,
"MD033": false,
"MD041": false
}

View File

@@ -0,0 +1 @@
24

View File

@@ -0,0 +1,21 @@
# Ignore all files in root
/*
# Except the ones we want to publish
!data/
!icons/
!package.json
!DISCLAIMER.md
!README.md
!LICENSE.md
!VERSIONING.md
!index.js
!index-icons.js
!index.mjs
!index-icons.mjs
!index.d.ts
!types.d.ts
!sdk.mjs
!sdk.js
!sdk.d.ts
!.jsonschema.json
!jsconfig.json

View File

@@ -0,0 +1,3 @@
package-lock=true
save-exact=true
save-dev=true

View File

@@ -0,0 +1 @@
24

View File

@@ -0,0 +1,8 @@
# We prefer our own custom formatting for MarkDown files.
# See the following thread for the discussion:
# https://github.com/simple-icons/simple-icons-font/pull/73
LICENSE.md
slugs.md
# We use our own formatting for the data files.
data/simple-icons.json

View File

@@ -0,0 +1,8 @@
{
"plugins": ["prettier-plugin-packagejson"],
"useTabs": true,
"singleQuote": true,
"bracketSpacing": false,
"proseWrap": "never",
"embeddedLanguageFormatting": "off"
}

View File

@@ -0,0 +1,79 @@
# Contributor Covenant Code of Conduct
## Our Pledge
We as members, contributors, and leaders pledge to make participation in our community a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, religion, or sexual identity and orientation.
We pledge to act and interact in ways that contribute to an open, welcoming, diverse, inclusive, and healthy community.
## Our Standards
Examples of behavior that contributes to a positive environment for our community include:
- Demonstrating empathy and kindness toward other people
- Being respectful of differing opinions, viewpoints, and experiences
- Giving and gracefully accepting constructive feedback
- Accepting responsibility and apologizing to those affected by our mistakes, and learning from the experience
- Focusing on what is best not just for us as individuals, but for the overall community
Examples of unacceptable behavior include:
- The use of sexualized language or imagery, and sexual attention or advances of any kind
- Trolling, insulting or derogatory comments, and personal or political attacks
- Public or private harassment
- Publishing others' private information, such as a physical or email address, without their explicit permission
- Other conduct which could reasonably be considered inappropriate in a professional setting
## Enforcement Responsibilities
Community leaders are responsible for clarifying and enforcing our standards of acceptable behavior and will take appropriate and fair corrective action in response to any behavior that they deem inappropriate, threatening, offensive, or harmful.
Community leaders have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, and will communicate reasons for moderation decisions when appropriate.
## Scope
This Code of Conduct applies within all community spaces, and also applies when an individual is officially representing the community in public spaces. Examples of representing our community include using an official e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported to the community leaders responsible for enforcement at <community@simpleicons.org>. All complaints will be reviewed and investigated promptly and fairly.
All community leaders are obligated to respect the privacy and security of the reporter of any incident.
## Enforcement Guidelines
Community leaders will follow these Community Impact Guidelines in determining the consequences for any action they deem in violation of this Code of Conduct:
### 1. Correction
**Community Impact**: Use of inappropriate language or other behavior deemed unprofessional or unwelcome in the community.
**Consequence**: A private, written warning from community leaders, providing clarity around the nature of the violation and an explanation of why the behavior was inappropriate. A public apology may be requested.
### 2. Warning
**Community Impact**: A violation through a single incident or series of actions.
**Consequence**: A warning with consequences for continued behavior. No interaction with the people involved, including unsolicited interaction with those enforcing the Code of Conduct, for a specified period of time. This includes avoiding interactions in community spaces as well as external channels like social media. Violating these terms may lead to a temporary or permanent ban.
### 3. Temporary Ban
**Community Impact**: A serious violation of community standards, including sustained inappropriate behavior.
**Consequence**: A temporary ban from any sort of interaction or public communication with the community for a specified period of time. No public or private interaction with the people involved, including unsolicited interaction with those enforcing the Code of Conduct, is allowed during this period. Violating these terms may lead to a permanent ban.
### 4. Permanent Ban
**Community Impact**: Demonstrating a pattern of violation of community standards, including sustained inappropriate behavior, harassment of an individual, or aggression toward or disparagement of classes of individuals.
**Consequence**: A permanent ban from any sort of public interaction within the community.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 2.0, available at <https://www.contributor-covenant.org/version/2/0/code_of_conduct.html>.
Community Impact Guidelines were inspired by [Mozilla's code of conduct enforcement ladder](https://github.com/mozilla/diversity).
[homepage]: https://www.contributor-covenant.org
For answers to common questions about this code of conduct, see the FAQ at <https://www.contributor-covenant.org/faq>. Translations are available at <https://www.contributor-covenant.org/translations>.

View File

@@ -0,0 +1,554 @@
<!-- markdownlint-disable no-blanks-blockquote -->
# Contributing to Simple Icons
[![Good first issues](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fapi.github.com%2Fsearch%2Fissues%3Fq%3Drepo%3Asimple-icons%2Fsimple-icons%2520label%3A%2522good%2520first%2520issue%2522%2520is%3Aopen%2520-linked%3Apr&query=%24.total_count&suffix=%20open&logo=github&label=good%20first%20issues&color=228f6c&labelColor=228f6c&logoColor=white&style=flat-square)](https://github.com/simple-icons/simple-icons/issues?q=is%3Aopen+label%3A%22good+first+issue%22+-linked%3Apr) [![Icon issues](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fapi.github.com%2Fsearch%2Fissues%3Fq%3Drepo%3Asimple-icons%2Fsimple-icons%2520label%3A%2522update%2520icon%2Fdata%2522%2C%2522new%2520icon%2522%2520is%3Aopen%2520-linked%3Apr&query=%24.total_count&suffix=%20open&logo=svg&logoColor=333&label=icon%20issues&labelColor=FFB13B&color=FFB13B&style=flat-square)](https://github.com/simple-icons/simple-icons/issues?q=is%3Aissue+is%3Aopen+label%3A%22new+icon%22%2C%22update+icon%2Fdata%22) [![Code issues](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fapi.github.com%2Fsearch%2Fissues%3Fq%3Drepo%3Asimple-icons%2Fsimple-icons%2520is%3Aissue%2520is%3Aopen%2520label%3Ameta%2Cpackage%2520-linked%3Apr&query=%24.total_count&suffix=%20open&logo=typescript&logoColor=white&label=code%20issues&labelColor=3178C6&color=3178C6&style=flat-square)](https://github.com/simple-icons/simple-icons/issues?q=is%3Aissue+is%3Aopen+label%3Adocs%2Cmeta%2Cpackage+-linked%3Apr) [![Documentation issues](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fapi.github.com%2Fsearch%2Fissues%3Fq%3Drepo%3Asimple-icons%2Fsimple-icons%2520label%3Adocs%2520is%3Aopen%2520-linked%3Apr&query=%24.total_count&suffix=%20open&logo=markdown&label=docs%20issues&labelColor=343a40&color=343a40&logoColor=FFF&style=flat-square)](https://github.com/simple-icons/simple-icons/issues?q=is%3Aopen+is%3Aissue+label%3Adocs+-linked%3Apr)
> [!IMPORTANT]\
> We ask that all users read our [legal disclaimer](./DISCLAIMER.md) before contributing to Simple Icons.
Simple Icons welcomes contributions and corrections. Before contributing, please make sure you have read the guidelines below. If you decide to contribute anything, please follow the steps below. If you're new to _git_ and/or _GitHub_, we suggest you go through [the GitHub Guides](https://guides.github.com/introduction/flow/).
1. Fork this repository
1. (Optional) Clone the fork
- Using SSH
```shell
git clone --filter=tree:0 git@github.com:simple-icons/simple-icons.git
```
- Using HTTPS
```shell
git clone --filter=tree:0 https://github.com/simple-icons/simple-icons.git
```
- Using GitHub CLI
```shell
gh repo clone simple-icons/simple-icons -- --filter=tree:0
```
1. Create a new branch from the latest `develop`
1. Start hacking on the new branch
1. Commit and push to the new branch
1. Make a pull request
## Table of contents
- [Requesting an Icon](#requesting-an-icon)
- [Forbidden Brands](#forbidden-brands)
- [Assessing Popularity](#assessing-popularity)
- [Opening an Issue](#opening-an-issue)
- [Adding or Updating an Icon](#adding-or-updating-an-icon)
- [Requesting Permission](#requesting-permission)
- [Testing Package Locally](#testing-package-locally)
- [Using Docker](#using-docker)
## Requesting an Icon
We welcome icon requests. Before you submit a new issue please make sure the icon:
- Has not already been requested. If you find an existing issue or pull request for the brand you're looking for then please add a reaction or comment to show your support.
- Is of a _popular_ brand - see "[Assessing Popularity](#assessing-popularity)" below.
- Doesn't fall into one of the following categories:
- Illegal services (e.g. piracy, malware, threatening material, spam, etc.)
- Military-related brands and organizations
- Governmental agencies, programs, departments
- Allowed: International organizations and NGOs with supranational interests
- Allowed: Space agencies
- Allowed: Meteorological services
- Allowed: State owned media (unless engaged in propaganda)
- Religious institutions and organisations
- Brands that operate in service of a religion or faith
- Allowed: Brands where religion or faith are part of the corporate culture
- Symbols, including flags and banners
- Allowed: standards like FCC, CE, CCC, RoHS...
- Allowed: licenses like CC, Unlicense, MIT...
- Sport clubs
- Allowed: Sports organizations
- Yearly releases
- Universities or other educational institutions
- Any brands representing individuals rather than an organization, company, or product. This includes musicians, bands, and social media personalities.
### Forbidden Brands
Some companies and organizations are excessively protective with their brands, so please don't consider them:
- [Amazon / AWS](https://github.com/simple-icons/simple-icons/pull/13056)
- BP
- Disney, including, but not limited to:
- Marvel
- International Olympic Committee
- Mattel
- Microchip Technology Inc.
- [Microsoft](https://github.com/simple-icons/simple-icons/issues/11236), including, but not limited to:
- C#
- LinkedIn
- Playwright
- Visual Studio
- Oracle, including, but not limited to:
- Java
- [Yahoo!](https://github.com/simple-icons/simple-icons/pull/9861#issuecomment-1819664495)
- Do you know more? Please, [report them](https://github.com/simple-icons/simple-icons/issues/new?labels=docs&template=documentation.yml).
If you are in doubt, feel free to submit it and we'll have a look.
### Assessing Popularity
> [!NOTE]\
> Please make your way through the following metrics _in order_, only moving on to the next metric if the current metric is not applicable to the brand being assessed or if it would put the brand outside our scope.
To be considered popular enough to be within our scope, a brand must be in existence for at least one year and meet one of the following metrics of popularity, in order of preference:
1. Its website's Traffic.cv global rank is in the top 500k.
- As Traffic.cv updates its data only once every month, there will be a monitoring window for websites ranked between 450k & 550k until the next update, _unless_ the brand is within scope on any other metric below.
- For existing icons in our library, the threshold is dropped from 500k to 750k.
- A rank lower than 2m, without any other metric being provided, will result in the brand being declared outside our scope.
1. The website's Traffic.cv rank in any one country is either:
- In the top 100, or,
- In the top 10k, _with_ a global rank of 1m or better.
1. Its app's Traffic.cv country rank, in any one country, is in the top 1k for either Android or iOS.
- Android apps should be assessed by their usage rank, rather than their store rank.
- Category ranks will not be accepted.
1. In cases where a brand does not have its own website the Traffic.cv rank of its parent company will be accepted _if_ the brand is that company's primary product.
1. Its packages meet one of the following minimum requirements:
- [npm](https://www.npmjs.com): 100k weekly downloads,
- [jsDelivr](https://www.jsdelivr.com): 1m daily or 35m monthly requests,
- [crates.io](https://crates.io): 1,200,000 recent (100k weekly) downloads,
- [PyPi Stats](https://pypistats.org): 100k weekly downloads,
- [Homebrew Formulae](https://formulae.brew.sh): 5k installs in the last 30 days or 50k installs in the last year,
- [Arch User Repository](https://aur.archlinux.org): popularity of 7.00, or,
- [Docker](https://www.docker.com): 500k weekly downloads.
1. If the brand is a Fediverse project, it needs to have a minimum of 10,000 Monthly Active Users as listed on [FediDB](https://fedidb.org/software).
- In addition, for **servers** that have a unique recognizable logo, the User Count as listed on [FediDB](https://fedidb.org/network) should be 100,000 or higher.
1. The brand's popularity can be illustrated by other publicly available & verifiable statistic (e.g., downloads, usage).
- Stats should preferably also include data on one of our existing brands so a direct comparison can be made.
1. The brand's popularity can be illustrated through a worldwide Google Trends comparison, or similar.
- Must be with a similar brand that is already in our library and still within our scope, or that would qualify under any metric.
- Must be unambiguous (i.e., it's not a suitable metric for brands with generic words for names).
- Trending equal to or higher than the compared brand will be considered in scope.
- Trending lower than the compared brand but with an upward trajectory will require the consensus of the person providing the comparison and at least 2 project maintainers.
As a last resort, after exhausting all other options above, and where applicable, the primary repository for the brand's GitHub project will be considered provided it meets the following requirements (see note below):
- It is active,
- It has a minimum of 5k GitHub stars,
- It has an average of 1k stars for each year of its existence (e.g., a project started 10 years ago would require a minimum of 10k stars), and,
- Its [star history](https://star-history.com) is on a consistently upward trajectory.
If all else fails, though, feel free to make a good case for the popularity of the brand you're requesting on any other grounds, provided it can be backed up with verifiable data. Example: a car manufacturer's own website falls outside our scope but a major dealership dealing exclusively or primarily in that brand falls within our scope - in that case we'd accept the manufacturer as being popular. If you can provide a _particularly_ good metric that can be applied to other brands then it will be added to this list.
> [!NOTE]\
> All metrics & cut-offs above are subject to ongoing review and potential change. These current metrics were devised in order to no longer rely on GitHub stars as an indication of a project's popularity. But, for projects that only exist on GitHub, we do still need some way of assessing their popularity so, until we can come up with a better way to do so, we have kept stars for the time being but will not be putting as much weight on them as in the past. If you know of a better way of assessing the popularity of a GitHub project then please create an issue for discussion.
### Opening an Issue
When submitting a request for a new or updated icon include helpful information such as:
- **Issue Title:** The brand name. For example:
- New Icons: `Request: GitHub Icon`
- Icon Updates: `Update: GitHub Color` or `Update: GitHub Icon`
- **Issue Body:** Links to official sources for the brand's icon and colors (e.g. media kits, brand guidelines, SVG files, etc.)
If you have an affiliation to the brand you are requesting that allows you to speak on their behalf then please disclose that in your issue as it can help speed up our research process.
Don't submit multiple requests in one issue. If you want to request multiple icons, please create a separate issue for each one.
## 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.
Official high quality brand logos and brand colors can usually be found in the following locations:
1. About pages, Press pages, Media Kits, and Brand Guidelines.
1. Website headers
1. Favicons
1. Wikimedia (which should provide a source)
1. GitHub repositories
It may be the case that no official source exists, but an unofficial icon has gained widespread acceptance and popularity. In such cases the unofficial icon can be included, but the details will be judged on a case-by-case basis. The JavaScript icon is an example of this. Notice that an unofficial source will never supersede an official one, even if it is more popular. An unofficial icon will only be accepted if no official option exists.
#### Icon Guidelines
Working with an SVG version of the logo is best. In the absence of an SVG version, other vector filetypes may work as well (e.g. EPS, AI, PDF). In the absence of vector logos, a vector can be created from a high-quality rasterized image, however, this is much more labor-intensive.
If the icon includes a (registered) trademark icon we follow the guidelines below to decide whether to include the symbol or not:
- If brand guidelines explicitly require including the symbol, it must be included.
- If the brand itself includes the symbol with all uses of the logo, even at small sizes, it must be included.
- If the symbol is incorporated into the design of the logo (e.g. [Chupa Chups]), it must be included.
- If there is ambiguity about the conditions under which the symbol is required, it must be included if it is a _registered trademark symbol_ (®) but not if is a _trademark symbol_ (™).
- If brand guidelines say it _may_ be removed, usually when the icon is displayed at small sizes, it must not be included.
- If there is no explicit requirement that a symbol must be included, it must not be included.
[Chupa Chups]: https://github.com/simple-icons/simple-icons/blob/develop/icons/chupachups.svg
#### Color Guidelines
For color, the brand's primary color should be used. The official color of a brand is usually found in their brand guidelines, media kits, or some of the other locations mentioned above. If no official color can be identified, use the brand's primary web color or the most prominent color in the logo itself (please indicate why you choose the particular color in your pull request). If an icon's primary color is made up of a gradient, use [Eric Meyer's Color Blender tool] to pick the color of the calculated midpoint. Simple Icons stores brand colors in the standard 6 character hexadecimal format.
[Eric Meyer's Color Blender tool]: https://meyerweb.com/eric/tools/color-blend/#::1:hex
### 2. Extract the Icon from the Logo
There are many different tools for editing SVG files, some options include:
| Name | Description | Platform | Price |
| :-- | :-- | :-: | :-: |
| [Inkscape](https://inkscape.org/) | Vector Graphics Editor | Windows, Mac, Linux | Free |
| [SVGEdit](https://svgedit.netlify.app/editor/index.html) | Vector Graphics Editor | Web | Free |
| [Boxy SVG](https://boxy-svg.com/) | Vector Graphics Editor | Windows, Mac, Linux | $ / Free (Linux, Web) |
| [Affinity Designer](https://affinity.serif.com/designer/) | Vector Graphics Editor | Windows, Mac | $ |
| [Adobe Illustrator](https://www.adobe.com/products/illustrator.html) | Vector Graphics Editor | Windows, Mac | $ - $$$ |
Using your preferred tool you should:
1. Isolate the icon from any text or extraneous items.
1. Merge any overlapping paths.
1. Compound all paths into one.
1. Change the icon's viewbox/canvas/page size to 24x24.
1. Scale the icon to fit the viewbox, while preserving the icon's original proportions. This means the icon should be touching at least two sides of the viewbox.
1. Center the icon horizontally and vertically.
1. Remove all colors. The icon should be monochromatic.
1. Export the icon as an SVG.
Some icons can't be easily converted to a monochromatic version due to colour changes, shadows, or other effects. For such cases, the addition of gaps is the recommended approach, with a preferred width of 0.5px. In some situations, a different gap may be required, but that will be determined on a per-case basis.
If you have any problems or questions while creating the SVG, check out [the GitHub Discussions]. You may find an answer to your question there or you can ask your question if you did not find an answer.
[the GitHub Discussions]: https://github.com/simple-icons/simple-icons/discussions/categories/help-with-svgs
### 3. Optimize the Icon
All icons in Simple Icons have been optimized with the [SVGO tool]. This can be done in one of three ways:
- The [SVGO Command Line Tool](https://github.com/svg/svgo)
- Run the following command `npx svgo icons/file-to-optimize.svg`
- Check if there is a loss of quality in the output, if so increase the precision.
- The [SVGOMG Online Tool](https://jakearchibald.github.io/svgomg/)
- Click "Open SVG" and select an SVG file.
- Set the precision to about 3, depending on if there is a loss of quality.
- Leave the remaining settings untouched (or reset them with the button at the bottom of the settings).
- Click the download button.
- The [SVGO Command Line Tool](https://github.com/svg/svgo) in Docker
- If none of the options above work for you, it is possible to build a Docker image for compressing the images.
- Build: `docker build . -t simple-icons`
- Run: `docker run --rm -v ${PWD}/icons/file-to-optimize.svg:/image.svg simple-icons`
After optimizing the icon, double-check it against your original version to ensure no visual imperfections have crept in. Also, make sure that the dimensions of the path have not been changed so that the icon no longer fits exactly within the canvas. We currently check the dimensions up to a precision of 3 decimal points.
[SVGO tool]: https://github.com/svg/svgo
### 4. Annotate the Icon
Each icon in Simple Icons has been annotated with a number of attributes and elements to increase accessibility. These include:
- An svg element with the following attributes, ordered respectively:
- An img role attribute.
- `role="img"`
- A 24x24 viewbox.
- `viewBox="0 0 24 24"`
- The svg namespace.
- `xmlns="http://www.w3.org/2000/svg"`
- A title element containing the brand name.
- `<title>Adobe Photoshop</title>`
Here is _part of_ the svg for the Adobe Photoshop icon as an example:
```svg
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Adobe Photoshop</title>...</svg>
```
### 5. Check the Icon
The final icon should:
- Be properly annotated [as discussed above](#4-annotate-the-icon).
- Be monochromatic.
- Remove all fill colors so that icon defaults to black.
- Be scaled to fit the viewbox, while preserving the icon's original proportions.
- This means the icon should be touching at least two sides of the viewbox.
- Be vertically and horizontally centered.
- Be minified to a single line with no formatting.
- Contain only a single `path` element.
- Not contain extraneous elements.
- This includes: `circle`, `ellipse`, `rect`, `polygon`, `line`, `g`, etc.
- Not contain extraneous attributes.
- This includes: `width`, `height`, `fill`, `stroke`, `clip`, `font`, etc.
Here is the svg for the Adobe Photoshop icon as an example:
```svg
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Adobe Photoshop</title><path d="M0 .3v23.4h24V.3H0zm1 1h22v21.4H1V1.3zm4.8 4.48c0-.067.14-.116.224-.116.644-.033 1.588-.05 2.578-.05 2.772 0 3.85 1.52 3.85 3.466 0 2.54-1.842 3.63-4.102 3.63-.38 0-.51-.017-.775-.017v3.842c0 .083-.033.116-.115.116H5.916c-.083 0-.115-.03-.115-.113V5.78zm1.775 5.312c.23.016.412.016.81.016 1.17 0 2.27-.412 2.27-1.996 0-1.27-.786-1.914-2.122-1.914-.396 0-.775.016-.957.033v3.864zm8.607-1.188c-.792 0-1.056.396-1.056.726 0 .363.18.61 1.237 1.155 1.568.76 2.062 1.485 2.062 2.557 0 1.6-1.22 2.46-2.87 2.46-.876 0-1.62-.183-2.05-.43-.065-.033-.08-.082-.08-.165V14.74c0-.1.048-.133.114-.084.624.413 1.352.594 2.012.594.792 0 1.122-.33 1.122-.776 0-.363-.23-.677-1.237-1.205-1.42-.68-2.014-1.37-2.014-2.527 0-1.287 1.006-2.36 2.755-2.36.86 0 1.464.132 1.794.28.082.05.1.132.1.198v1.37c0 .083-.05.133-.15.1-.444-.264-1.1-.43-1.743-.43z"/></svg>
```
### 6. Name the Icon
The filename of the SVG should correspond to the `<title>` used in the markup file mentioned above, and it should follow the rules below. If you're in doubt, you can always run `npm run get-filename -- "Brand name"` to get the correct filename.
1. Use **lowercase letters** without **whitespace**, for example:
```yml
title: Adobe Photoshop
filename: adobephotoshop.svg
```
1. Only use **latin** letters, for example:
```yml
title: Citroën
filename: citroen.svg
```
1. Replace the following symbols with their alias:
| Symbol | Alias |
| :----: | ----- |
| + | plus |
| . | dot |
| & | and |
for example:
```yml
title: .Net
filename: dotnet.svg
```
1. On rare occasions the resulting name will clash with the name of an existing SVG file in our collection. To resolve such conflicts append `_[MODIFIER]` to the name, where `[MODIFIER]` is a short descriptor of the brand or the service they provide and follows the same rules of construction as above.
for example:
```yml
title: Hive
filename: hive_blockchain.svg
```
### 7. Update the JSON Data for SimpleIcons.org
Icon metadata should be added to the `data/simple-icons.json` file. Each icon in the array has three required values:
- The `title` of the new SVG.
- A `hex` color value that matches the brand's primary color. All uppercase and without the `#` symbol.
- The `source` URL of the logo being used. There are [more details below](#source-guidelines).
There are also [optional values](#optional-data) that may be provided for each icon, which are listed below.
Here is the object of a fictional brand as an example:
```json
{
"title": "A Fictional Brand",
"hex": "123456",
"source": "https://www.a-fictional-brand.org/logo"
}
```
You can use `npm run add-icon-data` to add metadata via a CLI prompt.
Make sure the icon is added in alphabetical order. If you're in doubt, you can always run `npm run ourlint` - this will tell you if any of the JSON data is in the wrong order.
#### Optional Data
Additionally, each icon in the `data/simple-icons.json` file may be given any of the following optional values:
- The `slug` must be used to specify the icon's file name in cases where a modifier has been added to it in order to resolve a clash with an existing icon's name.
- The `guidelines` may be used to specify the URL of the brand's guidelines/press kit/etc. This is useful if the SVG file was sourced from a different place, still if the SVG file was sourced from the guidelines, the URL should be duplicated here.
- The `license` may be used to specify the license under which the icon is available. This is an object with a `type` and `url`. The `type` should be a [SPDX License ID](https://spdx.org/licenses/) or `"custom"`, the `url` is optional unless the `type` is `"custom"`.
Here is the object of the fictional brand from before, but with all optional values, as an example:
```json
{
"title": "A Fictional Brand",
"slug": "afictionalbrand_modifier",
"hex": "123456",
"source": "https://www.a-fictional-brand.org/logo",
"guidelines": "https://www.a-fictional-brand.org/brand-guidelines",
"license": {
"type": "CC0-1.0",
"url": "https://www.a-fictional-brand.org/logo/license"
}
}
```
> Non secured HTTP URLs are forbidden. If a brand's website only supports HTTP, you must still declare the URL using the `https://` protocol.
#### Source Guidelines
We use the source URL as a reference for the current SVG in our repository and as a jumping-off point to find updates if the logo changes. If you used one of the sources listed below, make sure to follow these guidelines. If you're unsure about the source URL you can open a Pull Request and ask for help from others.
If the SVG is sourced from:
- **Branding page**: For an SVG from a branding page the source URL should link to the branding page and not the image, PDF, or archive (such as `.zip`) file.
- **Company website**: If the SVG is found on the company website (but there is no branding page) the source URL should link to a common page, such as the home page or about page, that includes the source image and not the image file itself.
- **GitHub**: For an SVG from a GitHub (GitLab, BitBucket, etc.) repository the source URL should link to the file that was used as source material. If the color does not come from the file, its origin should be stated in the Pull Request description.
The commit hash should always be part of the URL. On GitHub, you can get the correct URL by pressing <kbd>y</kbd> on the GitHub page you want to link to. You can get help at the [getting permanent links to files page](https://help.github.com/en/github/managing-files-in-a-repository/getting-permanent-links-to-files).
- **Wikipedia**: For an SVG from Wikipedia/Wikimedia the source URL should link to the logo file's page on the relevant site, and not the brand's Wikipedia pages. For example, [this is the link for AmericanExpress](https://commons.wikimedia.org/wiki/File:American_Express_logo.svg).
In general, make sure the URL does not contain any tracking identifiers.
#### Aliases
Lastly, we aim to provide aliases of three types for various reasons. Each type of alias and its purpose can be found below. If you're unsure, you can mention an alias you're considering in your Pull Request so it can be discussed.
##### Also Known As
We collect "also known as" names to make it easier to find brands that are known by different names or by their abbreviation/full name. This does not include localized names, which are recorded separately. To add an "also known as" name you add the following to the icon data:
```json
{
"title": "the original title",
"aliases": {
"aka": [
"tot",
"thetitle"
]
}
}
```
Where the string is **different** from the original title as well as all other strings in the list.
##### Duplicates
We collect the names of duplicates, brands that use the same icon but have a different name, to prevent duplicating an SVG while at the same time making the SVG available under the name of the duplicate. To add a duplicate you add the following to the icon data:
```json5
{
"title": "the original title",
"hex": "123456",
"aliases": {
"dup": [
{
"title": "the duplicate's title",
"hex": "654321", // Only if different from original's color
"guidelines": "..." // Only if different from original's guidelines
}
]
}
}
```
Where the nested `title` is the name of the duplicate brand. The other fields, `hex` and `guidelines`, are only provided if they differ from the original.
##### Localization
We collect localized names to make it possible to find the brand by it's local name, as well as to provide SVGs with localized titles. To add a localized name you add the following to the icon data:
```json
{
"title": "the original title",
"aliases": {
"loc": {
"en-US": "A different title"
}
}
}
```
Where the `locale` is an [IETF language tag] and each localized title is **different** from the original one.
[IETF language tag]: https://en.wikipedia.org/wiki/IETF_language_tag
##### Old Names
We collect old names to make it possible to find the brand by it's old name. To add an old name you add the following to the icon data:
```json
{
"title": "the title",
"aliases": {
"old": [
"the old title"
]
}
}
```
Where each old title is **different** from the current title as well as all other strings in the list.
Old names may be retained indefinitely, but can be removed at any time, ideally when they no longer serve a meaningful purpose.
### 8. Create a Pull Request
Once you've completed the previous steps, create a pull request to merge your edits into the _develop_ branch. You can run `npm run lint` to check if there are any issues you still need to address.
If you have an affiliation to the brand you contributing that allows you to speak on their behalf then please disclose that in your pull request as it can help speed up our research and review processes.
Don't submit multiple icon additions or updates in one pull request. If you want to add or update multiple icons, please create a separate pull request for each one.
### Requesting Permission
If a brand's terms and conditions state that we need permission to include their brand, we will tag related issues and PRs with `permission required`. Anybody creating a PR for one of these icons is responsible (even if we discover permission requirements during PR review) for obtaining said permission.
If a contributor has been asked to obtain permission, they have 2 weeks to confirm they've reached out to the brand. If they do not confirm they have done this during that time, the PR will be closed.
If the contributor _has_ confirmed they've reached out to the brand, we will wait a maximum of 2 months for a response. If the response is an outright 'no' or is ambiguous, both the PR and issue will be closed, and the issue will marked as `will not add`. If the brand does not respond, we may close the PR or mark it as a draft, depending on whether the contributor is still actively pursuing a response. If the brand approves usage, the contributor should add the email response to the comments of the PR, and we will continue to merge the icon into the collection.
#### Example Email
```text
Dear [Brand Name],
I am contributing to the Simple Icons project on GitHub (https://github.com/simple-icons/simple-icons) and would like to add your brand's icon.
One of the maintainers has requested - as per your Terms and Conditions - that I reach out to formally obtain permission prior to accepting it into their collection.
Could you please let me know at your earliest convenience whether or not we are okay to include your brand's icon in the project?
Kind regards,
[Your name]
```
## Testing Package Locally
- Make sure you have [Node.js](https://nodejs.org/en/download/) installed. At least version `>=18.18.0` is required.
- Install the dependencies using `npm install`.
- Build and test the package using `npm test`.
- Run the project linting process using `npm run lint`.
## Using Dev Container
We have a pre-configured Node.js runtime for [Dev Containers](https://code.visualstudio.com/docs/devcontainers/containers). You can also use the [GitHub Codespaces](https://github.com/features/codespaces) to code from any device.
## Using Docker
You can build a Docker image for this project which can be used as a development environment and allows you to run SVGO safely. First, build the Docker image for simple-icons (if you haven't yet):
```shell
docker build . -t simple-icons
```
Then, start a Docker container for simple-icons and attach to it:
```shell
docker run -it --rm --entrypoint "/bin/ash" simple-icons
```
## Developing Third-Party Extensions
An SDK is included in the `simple-icons/sdk` entrypoint of the npm package to make it easier the development of third party extensions with JavaScript and TypeScript.
```typescript
import {getIconsData, type IconData} from 'simple-icons/sdk';
const iconsData: Promise<IconData[]> = getIconsData();
```
```javascript
import {getIconsData} from 'simple-icons/sdk';
/* @typedef {import("./simple-icons/sdk").IconData} IconData */
/* @type {Promise<IconData[]>} */
const iconsData = getIconsData();
```

View File

@@ -0,0 +1,56 @@
# Disclaimer
Simple Icons asks that its users read this disclaimer fully before including an icon in their project.
## Table of Contents
- [Licenses, Copyrights & Trademarks](#licenses-copyrights--trademarks)
- [Brand Guidelines](#brand-guidelines)
- [Update of Brands](#update-of-brands)
- [Removal of Brands](#removal-of-brands)
## Licenses, Copyrights & Trademarks
> [!IMPORTANT]\
> The addition of licenses to Simple Icons is an ongoing project. Hence, the absence of licence data for a particular icon does not imply that the icon is not released under a license.
<!-- makdownlint-disable-next-line no-blanks-blockquote -->
> [!NOTE]\
> Simple Icons is released under CC0 - though that doesn't mean to imply that all icons within the project are also CC0. Please see individual licenses where available.
Simple Icons provides data on the license under which icons are available. We ask users to carefully consider this when using an icon. As licenses are subject to change we also ask our users to regularly check if the license of the icons they use have been changed.
The license under which an icon is available can be found in the icon's entry in the JSON data file in the NPM and Packagist packages, or through the license link on the icon's card on [the Simple Icons website].
As we rely largely on our community to help us keep Simple Icons up-to-date, the license data for an icon may be outdated. If you find that the license data provided is outdated, please [submit an issue][icon-outdated-issues] to [the Simple Icons GitHub repository].
If an icon includes a registered trademark (`®`) or trademark symbol (`™`) the recommendations outlined in [the Simple Icons Contributing Guidelines] are followed to decide whether to include the symbol or not.
Simple Icons cannot be held responsible for any legal activity raised by a brand, or users of the package. We ask that our users seek the correct permissions to use the icons relevant to their project.
## Brand Guidelines
> [!NOTE]\
> The addition of guidelines to Simple Icons is an ongoing project. In the meantime, users of Simple Icons are instead encouraged to check the `source` URL as, in some cases, the icon will have been sourced from official guidelines. The lack of a `guidelines` entry for a particular brand does not imply that the brand has no guidelines.
Simple Icons provides a link to a brand's _branding guidelines_ (or similar) if the brand provides one. We ask our users read these guidelines and ensure their usage of the brand's icon is in accordance with them. As guidelines are subject to change we also ask our users to regularly check if the brand guidelines of the icons they use have been updated.
The brand guidelines can be found in the icon's entry in the JSON data file in the NPM and Packagist packages, or through the "Brand Guidelines" link on the icon's card on [the Simple Icons website].
As we rely largely on our community to help us keep Simple Icons up-to-date, the guidelines link for a brand may be outdated. If you find that the guidelines are outdated, please [submit an issue][icon-outdated-issues] to [the Simple Icons GitHub repository].
## Update of Brands
Should a brand wish for their icon or data to be updated, please [submit an issue][icon-outdated-issues] to [the Simple Icons GitHub repository]. In the issue, please explain your affiliation with the company and reasons for the update. We generally release updates once a week, but can make exceptions for immediate updates of brands.
## Removal of Brands
Should a brand wish for their icon to be removed from the package, contact `removals at simpleicons dot org` explaining your affiliation with the company, and reasons for removal. Alternatively, it is also possible to [submit an issue][removal-issues] on [the Simple Icons GitHub repository] with the same information. We generally remove icons that no longer [meet our criteria] twice a year in our major releases - but can occasionally make exceptions for immediate removal of brands.
[meet our criteria]: https://github.com/simple-icons/simple-icons/blob/develop/CONTRIBUTING.md#requesting-an-icon
[icon-outdated-issues]: https://github.com/simple-icons/simple-icons/issues/new?assignees=&labels=update+icon%2Fdata&template=icon_update.yml&title=Update%3A+
[removal-issues]: https://github.com/simple-icons/simple-icons/issues/new?assignees=&labels=breaking+change&template=icon_removal.yml&title=Remove%3A+
[the simple icons contributing guidelines]: https://github.com/simple-icons/simple-icons/blob/develop/CONTRIBUTING.md#icon-guidelines
[the simple icons github repository]: https://github.com/simple-icons/simple-icons
[the simple icons website]: https://simpleicons.org/

View File

@@ -0,0 +1,10 @@
FROM node:24-alpine AS base
RUN apk add --no-cache git
WORKDIR /simple-icons
FROM base AS final
WORKDIR /simple-icons
COPY . .
RUN npm ci --no-audit --no-fund
ENTRYPOINT ["npx", "svgo", "/image.svg"]

View File

@@ -0,0 +1,30 @@
# CC0 1.0 Universal
## Statement of Purpose
The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an “owner”) of an original work of authorship and/or a database (each, a “Work”).
Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works (“Commons”) that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.
For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the “Affirmer”), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.
1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights (“Copyright and Related Rights”). Copyright and Related Rights include, but are not limited to, the following:
1. the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work;
2. moral rights retained by the original author(s) and/or performer(s);
3. publicity and privacy rights pertaining to a persons image or likeness depicted in a Work;
4. rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(i), below;
5. rights protecting the extraction, dissemination, use and reuse of data in a Work;
6. database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and
7. other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.
2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmers Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the “Waiver”). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmers heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmers express Statement of Purpose.
3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmers express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmers Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the “License”). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmers express Statement of Purpose.
4. Limitations and Disclaimers.
1. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.
2. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law.
3. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any persons Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work.
4. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.
For more information, please see <https://creativecommons.org/publicdomain/zero/1.0>.

View File

@@ -0,0 +1,225 @@
<p align="center">
<img src="https://cdn.simpleicons.org/simpleicons/000/fff" alt="Simple Icons" width=70>
<h3 align="center">Simple Icons</h3>
<p align="center">
Over 3300 SVG icons for popular brands. See them all on one page at <a href="https://simpleicons.org">SimpleIcons.org</a>. Contributions, corrections & requests can be made on GitHub.</p>
</p>
<p align="center">
<a href="https://simpleicons.org"><img src="https://img.shields.io/badge/dynamic/json?color=informational&label=icons&prefix=%20&logo=simpleicons&query=%24.length&url=https%3A%2F%2Fraw.githubusercontent.com%2Fsimple-icons%2Fsimple-icons%2Fdevelop%2Fdata%2Fsimple-icons.json" alt="Number of icons currently in the library"/></a>
<a href="https://www.npmjs.com/package/simple-icons"><img src="https://img.shields.io/npm/v/simple-icons.svg?logo=npm" alt="NPM version"/></a>
<a href="https://packagist.org/packages/simple-icons/simple-icons"><img src="https://img.shields.io/packagist/v/simple-icons/simple-icons?logo=packagist&logoColor=white" alt="Build status"/></a>
<br/>
<a href="https://github.com/simple-icons/simple-icons/actions?query=workflow%3AVerify+branch%3Adevelop"><img src="https://img.shields.io/github/actions/workflow/status/simple-icons/simple-icons/verify.yml?branch=develop&logo=github&label=tests" alt="Build status"/></a>
<a href="https://discord.gg/vUXFa7t5xJ"><img src="https://img.shields.io/discord/1142044630909726760?logo=discord&logoColor=white&label=discord" alt="Number of users active in our Discord server"/></a>
<a href="https://opencollective.com/simple-icons"><img src="https://img.shields.io/opencollective/all/simple-icons?logo=opencollective" alt="Backers and sponsors on Open Collective"/></a>
</p>
## Usage
> [!IMPORTANT]\
> We ask that all users read our [legal disclaimer](https://github.com/simple-icons/simple-icons/blob/develop/DISCLAIMER.md) before using icons from Simple Icons.
### General Usage
Icons can be downloaded as SVGs directly from [simpleicons.org](https://simpleicons.org) - simply click the download button of the icon you want, and the download will start automatically.
### CDN Usage
Icons can be served from a CDN such as [jsDelivr](https://www.jsdelivr.com/package/npm/simple-icons) or [unpkg](https://unpkg.com/browse/simple-icons/). Simply use the `simple-icons` npm package and specify a version in the URL like the following:
```html
<img height="32" width="32" src="https://cdn.jsdelivr.net/npm/simple-icons@v15/icons/[ICON SLUG].svg" />
<img height="32" width="32" src="https://unpkg.com/simple-icons@v15/icons/[ICON SLUG].svg" />
```
Where `[ICON SLUG]` is replaced by the [slug] of the icon you want to use, for example:
```html
<img height="32" width="32" src="https://cdn.jsdelivr.net/npm/simple-icons@v15/icons/simpleicons.svg" />
<img height="32" width="32" src="https://unpkg.com/simple-icons@v15/icons/simpleicons.svg" />
```
These examples use the latest major version. This means you won't receive any updates following the next major release. You can use `@latest` instead to receive updates indefinitely. However, this will result in a `404` error if the icon is removed.
#### CDN with colors
We also provide a CDN service which allows you to use colors.
```html
<img height="32" width="32" src="https://cdn.simpleicons.org/[ICON SLUG]" />
<img height="32" width="32" src="https://cdn.simpleicons.org/[ICON SLUG]/[COLOR]" />
<img height="32" width="32" src="https://cdn.simpleicons.org/[ICON SLUG]/[COLOR]/[DARK_MODE_COLOR]" />
```
Where `[COLOR]` is optional, and can be replaced by the [hex colors](https://developer.mozilla.org/en-US/docs/Web/CSS/hex-color) or [CSS keywords](https://www.w3.org/wiki/CSS/Properties/color/keywords) of the icon you want to use. The color is defaulted to the HEX color of the icon shown in [simpleicons.org website](https://simpleicons.org). `[DARK_MODE_COLOR]` is used for dark mode. The [CSS prefers-color-scheme](https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-color-scheme) will be used when a value is specified. For example:
```html
<img height="32" width="32" src="https://cdn.simpleicons.org/simpleicons" />
<img height="32" width="32" src="https://cdn.simpleicons.org/simpleicons/gray" />
<img height="32" width="32" src="https://cdn.simpleicons.org/simpleicons/hotpink" />
<img height="32" width="32" src="https://cdn.simpleicons.org/simpleicons/0cf" />
<img height="32" width="32" src="https://cdn.simpleicons.org/simpleicons/0cf9" />
<img height="32" width="32" src="https://cdn.simpleicons.org/simpleicons/00ccff" />
<img height="32" width="32" src="https://cdn.simpleicons.org/simpleicons/00ccff99" />
<img height="32" width="32" src="https://cdn.simpleicons.org/simpleicons/orange/pink" />
<img height="32" width="32" src="https://cdn.simpleicons.org/simpleicons/_/eee" />
<img height="32" width="32" src="https://cdn.simpleicons.org/simpleicons/eee/_" />
```
You can use a `viewbox=auto` parameter to get a auto-sized viewbox. This is useful if you want all icons rendered with consistent size:
```html
<img height="20" src="https://cdn.simpleicons.org/github?viewbox=auto" />
<img height="20" src="https://cdn.simpleicons.org/simpleicons?viewbox=auto" />
<img height="20" src="https://cdn.simpleicons.org/awesomelists?viewbox=auto" />
```
### Node Usage <img src="https://cdn.simpleicons.org/nodedotjs/000/fff" alt="Node" align=left width=24>
The icons are also available through our npm package. To install, simply run:
```shell
npm install simple-icons
```
All icons are imported from a single file, where `[ICON SLUG]` is replaced by a capitalized [slug]. We highly recommend using a bundler that can tree shake such as [webpack](https://webpack.js.org/) to remove the unused icon code:
```javascript
// Import a specific icon by its slug as:
// import { si[ICON SLUG] } from 'simple-icons'
// For example:
// use import/esm to allow tree shaking
import {siSimpleicons} from 'simple-icons';
// or with require/cjs
const {siSimpleicons} = require('simple-icons');
```
It will return an icon object:
```javascript
console.log(siSimpleicons);
/*
{
title: 'Simple Icons',
slug: 'simpleicons',
hex: '111111',
source: 'https://simpleicons.org/',
svg: '<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">...</svg>',
path: 'M12 12v-1.5c-2.484 ...',
guidelines: 'https://simpleicons.org/styleguide',
license: {
type: '...',
url: 'https://example.com/'
}
}
NOTE: the `guidelines` entry will be `undefined` if we do not yet have guidelines for the icon.
NOTE: the `license` entry will be `undefined` if we do not yet have license data for the icon.
*/
```
If you need to iterate over all icons, use:
```javascript
import * as icons from 'simple-icons';
```
#### TypeScript Usage <img src="https://cdn.simpleicons.org/typescript/000/fff" alt="Typescript" align=left width=19 height=19>
Type definitions are bundled with the package.
```typescript
import type {SimpleIcon} from 'simple-icons';
```
### PHP Usage <img src="https://cdn.simpleicons.org/php/000/fff" alt="Php" align=left width=24 height=24>
The icons are also available through our Packagist package. To install, simply run:
```shell
composer require simple-icons/simple-icons
```
The package can then be used as follows, where `[ICON SLUG]` is replaced by a [slug]:
```php
<?php
// Import a specific icon by its slug as:
echo file_get_contents('path/to/package/icons/[ICON SLUG].svg');
// For example:
echo file_get_contents('path/to/package/icons/simpleicons.svg');
// <svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">...</svg>
?>
```
### Font Usage
See [simple-icons-font](https://github.com/simple-icons/simple-icons-font) to learn how to use our font distribution.
## Third-Party Extensions
The below are known extensions to third-party tools.
| Extension | Author |
| :-- | :-- |
| [Blender add-on](https://github.com/mondeja/simple-icons-blender) <img src="https://cdn.simpleicons.org/blender/000/fff" alt="Blender" align=left width=24 height=24> | [@mondeja](https://github.com/mondeja) |
| [Boxy SVG library](https://boxy-svg.com/ideas/298/simple-icons-library-provider) <img src="https://cdn.simpleicons.org/boxysvg/000/fff" alt="Boxy SVG" align=left width=24 height=24> | [@Jarek](https://boxy-svg.com/profiles/0000000000/jarek) |
| [Drawio library](https://github.com/mondeja/simple-icons-drawio) <img src="https://cdn.simpleicons.org/diagramsdotnet/000/fff" alt="Drawio" align=left width=24 height=24> | [@mondeja](https://github.com/mondeja) |
| [Figma plugin](https://www.figma.com/community/plugin/1149614463603005908) <img src="https://cdn.simpleicons.org/figma/000/fff" alt="Figma" align=left width=24 height=24> | [@LitoMore](https://github.com/LitoMore) |
| [Jekyll plugin](https://github.com/pirafrank/jekyll-simple-icons) <img src="https://cdn.simpleicons.org/jekyll/000/fff" alt="Jekyll" align=left width=24 height=24> | [@pirafrank](https://github.com/pirafrank) |
| [Kando icon theme](https://kando.menu/icon-themes#built-in-icon-themes) <img src="https://cdn.simpleicons.org/kando/000/fff" alt="Kando" align=left width=24 height=24> | [@Schneegans](https://github.com/Schneegans) |
| [Miro app](https://miro.com/marketplace/brand-icons/) <img src="https://cdn.simpleicons.org/miro/000/fff" alt="Miro" align=left width=24 height=24> | [@LitoMore](https://github.com/LitoMore) |
| [Raycast extension](https://www.raycast.com/litomore/simple-icons) <img src="https://cdn.simpleicons.org/raycast/000/fff" alt="Raycast" align=left width=24 height=24> | [@LitoMore](https://github.com/LitoMore) |
| [Stream Deck icon pack](https://github.com/mackenly/simple-icons-stream-deck) <img src="https://cdn.simpleicons.org/elgato/000/fff" alt="Stream Deck" align=left width=24 height=24> | [@mackenly](https://github.com/mackenly) |
| [Typst package](https://typst.app/universe/package/sicons) <img src="https://cdn.simpleicons.org/typst/000/fff" alt="Typst" align=left width=24 height=24> | [@cscnk52](https://github.com/cscnk52) |
| [Webflow app](https://webflow.com/apps/detail/simple-icons) <img src="https://cdn.simpleicons.org/webflow/000/fff" alt="Webflow" align=left width=24 height=24> | [@diegoliv](https://github.com/diegoliv) |
Maintain an extension? [Submit a PR][open-pr] to include it in the list above.
## Third-Party Libraries
The below are known third-party libraries for use in your own projects. We only keep items in the list that are at least up to date with our previous major version.
| Library | Author | License | Simple Icons |
| :-- | :-- | :-: | :-: |
| [Angular package](https://github.com/gridatek/semantic-icons/tree/main/libs/simple-icons) <img src="https://cdn.simpleicons.org/angular/000/fff" alt="Angular" align=left width=24 height=24> | [@gridatek](https://github.com/gridatek) | ![License](https://img.shields.io/github/license/gridatek/semantic-icons?label=) | ![Simple Icons version](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Fgridatek%2Fsemantic-icons%2Fmain%2Fpackage.json&query=%24..devDependencies%5B'simple-icons'%5D&label=) |
| [Astro package](https://github.com/dzeiocom/simple-icons-astro) <img src="https://cdn.simpleicons.org/astro/000/fff" alt="Astro" align=left width=24 height=24> | [@Aviortheking](https://github.com/aviortheking) | ![License](https://img.shields.io/github/license/dzeiocom/simple-icons-astro?label=) | ![Simple Icons version](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Fdzeiocom%2Fsimple-icons-astro%2Fmaster%2Fpackage.json&query=%24.version&label=) |
| [Blazor Nuget package](https://github.com/TimeWarpEngineering/timewarp-simple-icons) <img src="https://cdn.simpleicons.org/blazor/000/fff" alt="Blazor" align=left width=24 height=24> | [@TimeWarpEngineering](https://github.com/TimeWarpEngineering) | ![License](https://img.shields.io/github/license/TimeWarpEngineering/timewarp-simple-icons?label=) | ![Simple Icons version](https://img.shields.io/badge/dynamic/xml?url=https%3A%2F%2Fraw.githubusercontent.com%2FTimeWarpEngineering%2Ftimewarp-simple-icons%2Fmain%2Fsource%2Ftimewarp-simple-icons%2Ftimewarp-simple-icons.csproj&query=%2FProject%2FPropertyGroup%2FVersion&label=) |
| [Flutter package](https://github.com/jlnrrg/simple_icons) <img src="https://cdn.simpleicons.org/flutter/000/fff" alt="Flutter" align=left width=24 height=24> | [@jlnrrg](https://github.com/jlnrrg) | ![License](https://img.shields.io/github/license/jlnrrg/simple_icons?label=) | ![Simple Icons version](https://img.shields.io/badge/dynamic/yaml?url=https%3A%2F%2Fraw.githubusercontent.com%2Fjlnrrg%2Fsimple_icons%2Fmaster%2Fpubspec.yaml&query=%24.version&logoColor=white&label=) |
| [Framer component](https://github.com/LitoMore/simple-icons-framer) <img src="https://cdn.simpleicons.org/framer/000/fff" alt="Framer" align=left width=24 height=24> | [@LitoMore](https://github.com/LitoMore) | ![License](https://img.shields.io/github/license/LitoMore/simple-icons-framer?label=) | ![Simple Icons version](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Fsimple-icons%2Fsimple-icons%2Fmaster%2Fpackage.json&query=%24.version&label=) |
| [Hugo module](https://github.com/foo-dogsquared/hugo-mod-simple-icons) <img src="https://cdn.simpleicons.org/hugo/000/fff" alt="Hugo" align=left width=24 height=24> | [@foo-dogsquared](https://github.com/foo-dogsquared) | ![License](https://img.shields.io/github/license/foo-dogsquared/hugo-mod-simple-icons?label=) | ![Simple Icons version](https://img.shields.io/github/v/tag/foo-dogsquared/hugo-mod-simple-icons?label=) |
| [Java library](https://github.com/silentsoft/simpleicons4j) <img src="https://cdn.simpleicons.org/openjdk/000/fff" alt="Java" align=left width=24 height=24> | [@silentsoft](https://github.com/silentsoft) | ![License](https://img.shields.io/github/license/silentsoft/simpleicons4j?label=) | ![Simple Icons version](https://img.shields.io/maven-central/v/org.silentsoft/simpleicons4j?label=) |
| [Kirby plugin](https://github.com/runxel/kirby3-simpleicons) <img src="https://cdn.simpleicons.org/kirby/000/fff" alt="Kirby" align=left width=24 height=24> | [@runxel](https://github.com/runxel) | ![License](https://img.shields.io/github/license/runxel/kirby3-simpleicons?label=) | ![Simple Icons version](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Frunxel%2Fkirby3-simpleicons%2Fmaster%2Fcomposer.json&query=%24..%5B'simple-icons%2Fsimple-icons'%5D&label=) |
| [LaTeX package](https://github.com/ineshbose/simple-icons-latex) <img src="https://cdn.simpleicons.org/latex/000/fff" alt="LaTeX" align=left width=24 height=24> | [@ineshbose](https://github.com/ineshbose) | ![License](https://img.shields.io/github/license/ineshbose/simple-icons-latex?label=) | ![Simple Icons version](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Fineshbose%2Fsimple-icons-latex%2Fdevelop%2Fpackage.json&query=%24..%5B'simple-icons-font'%5D&label=) |
| [Laravel package](https://github.com/ublabs/blade-simple-icons) <img src="https://cdn.simpleicons.org/laravel/000/fff" alt="Laravel" align=left width=24 height=24> | [@adrian-ub](https://github.com/adrian-ub) | ![License](https://img.shields.io/github/license/ublabs/blade-simple-icons?label=) | ![Simple Icons version](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Fsimple-icons%2Fsimple-icons%2Fmaster%2Fpackage.json&query=%24.version&label=) |
| [Python wheel](https://github.com/carstencodes/simplepycons) <img src="https://cdn.simpleicons.org/python/000/fff" alt="Python" align=left width=24 height=24> | [@carstencodes](https://github.com/carstencodes) | ![License](https://img.shields.io/github/license/carstencodes/simplepycons?label=) | ![Simple Icons version](https://img.shields.io/badge/dynamic/regex?url=https%3A%2F%2Fraw.githubusercontent.com%2Fcarstencodes%2Fsimplepycons%2Frefs%2Fheads%2Fmain%2F.gitmodules&search=%5C%5Bsubmodule%20%22vendor%5C%2Fsimple-icons%22%5C%5D%5B%5E%5C%5B%5D%2Bbranch%5Cs*%3D%5Cs*%28%3F%3Cversion%3E%5Cd%2B%5C.%5Cd%2B%5C.%5Cd%2B%3F%29&replace=%24%3Cversion%3E&flags=ims&label=) |
| [React package](https://github.com/icons-pack/react-simple-icons) <img src="https://cdn.simpleicons.org/react/000/fff" alt="React" align=left width=24 height=24> | [@wootsbot](https://github.com/wootsbot) | ![License](https://img.shields.io/github/license/icons-pack/react-simple-icons?label=) | ![Simple Icons version](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Ficons-pack%2Freact-simple-icons%2Fmain%2Fpackage.json&query=%24..%5B'simple-icons'%5D&label=) |
| [Ruby gem](https://rubygems.org/gems/simple-icons-rails) <img src="https://cdn.simpleicons.org/rubygems/000/fff" alt="Ruby" align=left width=24 height=24> | [@thepew](https://github.com/the-pew-inc) | ![License](https://img.shields.io/github/license/the-pew-inc/simple-icons-rails?label=) | ![Simple Icons version](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Fsimple-icons%2Fsimple-icons%2Fmaster%2Fpackage.json&query=%24.version&label=) |
| [Rust crate](https://crates.io/crates/simpleicons-rs) <img src="https://cdn.simpleicons.org/rust/000/fff" alt="Rust" align=left width=24 height=24> | [@cscnk52](https://github.com/cscnk52) | ![License](https://img.shields.io/github/license/cscnk52/simpleicons-rs?label=) | ![Simple Icons version](https://img.shields.io/crates/v/simpleicons-rs?color=blue&label=) |
| [Svelte package](https://github.com/icons-pack/svelte-simple-icons) <img src="https://cdn.simpleicons.org/svelte/000/fff" alt="Svelte" align=left width=24 height=24> | [@wootsbot](https://github.com/wootsbot) | ![License](https://img.shields.io/github/license/icons-pack/svelte-simple-icons?label=) | ![Simple Icons version](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Ficons-pack%2Fsvelte-simple-icons%2Fmain%2Fpackage.json&query=%24..%5B'simple-icons'%5D&label=) |
| [Vue 3 package](https://github.com/wyatt-herkamp/vue3-simple-icons) <img src="https://cdn.simpleicons.org/vuedotjs/000/fff" alt="Vue" align=left width=24 height=24> | [@wyatt-herkamp](https://github.com/wyatt-herkamp) | ![License](https://img.shields.io/github/license/wyatt-herkamp/vue3-simple-icons?label=) | ![Simple Icons version](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fraw.githubusercontent.com%2Fwyatt-herkamp%2Fvue3-simple-icons%2Fmain%2Fsimple-icons.json&query=simpleIconsVersion&label=) |
Maintain a library? [Submit a PR][open-pr] to include it in the list above.
## Contribute
[![Good first issues](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fapi.github.com%2Fsearch%2Fissues%3Fq%3Drepo%3Asimple-icons%2Fsimple-icons%2520label%3A%2522good%2520first%2520issue%2522%2520is%3Aopen%2520-linked%3Apr&query=%24.total_count&suffix=%20open&logo=github&label=good%20first%20issues&color=228f6c&labelColor=228f6c&logoColor=white&style=flat-square)](https://github.com/simple-icons/simple-icons/issues?q=is%3Aopen+label%3A%22good+first+issue%22+-linked%3Apr) [![Icon issues](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fapi.github.com%2Fsearch%2Fissues%3Fq%3Drepo%3Asimple-icons%2Fsimple-icons%2520label%3A%2522update%2520icon%2Fdata%2522%2C%2522new%2520icon%2522%2520is%3Aopen%2520-linked%3Apr&query=%24.total_count&suffix=%20open&logo=svg&logoColor=333&label=icon%20issues&labelColor=FFB13B&color=FFB13B&style=flat-square)](https://github.com/simple-icons/simple-icons/issues?q=is%3Aissue+is%3Aopen+label%3A%22new+icon%22%2C%22update+icon%2Fdata%22) [![Code issues](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fapi.github.com%2Fsearch%2Fissues%3Fq%3Drepo%3Asimple-icons%2Fsimple-icons%2520is%3Aissue%2520is%3Aopen%2520label%3Ameta%2Cpackage%2520-linked%3Apr&query=%24.total_count&suffix=%20open&logo=typescript&logoColor=white&label=code%20issues&labelColor=3178C6&color=3178C6&style=flat-square)](https://github.com/simple-icons/simple-icons/issues?q=is%3Aissue+is%3Aopen+label%3Adocs%2Cmeta%2Cpackage+-linked%3Apr) [![Documentation issues](https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fapi.github.com%2Fsearch%2Fissues%3Fq%3Drepo%3Asimple-icons%2Fsimple-icons%2520label%3Adocs%2520is%3Aopen%2520-linked%3Apr&query=%24.total_count&suffix=%20open&logo=markdown&label=docs%20issues&labelColor=343a40&color=343a40&logoColor=FFF&style=flat-square)](https://github.com/simple-icons/simple-icons/issues?q=is%3Aopen+is%3Aissue+label%3Adocs+-linked%3Apr)
Information describing how to contribute can be found in the file [CONTRIBUTING.md](https://github.com/simple-icons/simple-icons/blob/develop/CONTRIBUTING.md)
[slug]: https://github.com/simple-icons/simple-icons/blob/master/slugs.md
[open-pr]: https://github.com/simple-icons/simple-icons/compare
## Contributors
<a href="https://github.com/simple-icons/simple-icons/graphs/contributors">
<img
src="https://opencollective.com/simple-icons/contributors.svg?width=890&button=false"
alt="Contributors"
/>
</a>

View File

@@ -0,0 +1,21 @@
# Versioning
We use [Semantic Versioning](https://semver.org/) to version Simple Icons. In short, this means that version numbers are structured as `MAJOR.MINOR.PATCH`. For example, version `3.1.4` is major version `3`, minor version `1`, and patch `4`. Increasing each of these numbers implies certain kinds of changes.
For Simple Icons, given a change to the version number you can expect the following kinds of changes:
| Version number increase | Kinds of changes |
| :-- | :-- |
| _Major_ | Removed icons; Slug changed icons; Breaking API changes |
| _Minor_ | New icons; Title changed icons; API changes |
| _Patch_ | Updated SVGs; Updated metadata |
## Release Schedule
_Minor_ releases and _patches_ are scheduled on a weekly basis and are generally released on a Sunday.
_Major_ releases are scheduled on a half-year basis, mainly to remove old SVGs. That is, approximately every 6 months a normal Sunday release is a _major_ release instead of a _minor_ release or _patch_.
## Deprecation
After a _major_ release, the only other supported version is the last version of the previous _major_ release. This previous version will only receive bug fixes to either the npm library, or our internal APIs.

View File

@@ -0,0 +1,24 @@
{
"name": "simple-icons/simple-icons",
"description": "SVG icons for popular brands",
"homepage": "https://simpleicons.org/",
"keywords": [
"svg",
"icons"
],
"support": {
"issues": "https://github.com/simple-icons/simple-icons/issues",
"source": "https://github.com/simple-icons/simple-icons",
"docs": "https://github.com/simple-icons/simple-icons#php-usage-",
"chat": "https://discord.gg/vUXFa7t5xJ",
"forum": "https://github.com/simple-icons/simple-icons/discussions",
"security": "https://github.com/simple-icons/simple-icons/security/policy"
},
"license": "CC0-1.0",
"funding": [
{
"type": "opencollective",
"url": "https://opencollective.com/simple-icons"
}
]
}

View File

@@ -0,0 +1,59 @@
// @ts-check
/**
* @file Type definitions for icons JSON data.
*/
/**
* The data for a Simple Icon.
*/
export type IconData = {
title: string;
hex: string;
source: string;
slug: string;
guidelines?: string;
license?: Omit<SPDXLicense, 'url'> | CustomLicense;
aliases?: Aliases;
};
/**
* The aliases for a Simple Icon.
*
* Corresponds to the `aliases` property in the *data/simple-icons.json* file.
* @see {@link https://github.com/simple-icons/simple-icons/blob/develop/CONTRIBUTING.md#aliases Aliases}
*/
export type Aliases = {
aka?: string[];
dup?: DuplicateAlias[];
loc?: Record<string, string>;
old?: string[];
};
export type DuplicateAlias = {
title: string;
hex?: string;
guidelines?: string;
loc?: Record<string, string>;
};
/**
* The license for a Simple Icon.
* @see {@link https://github.com/simple-icons/simple-icons/blob/develop/CONTRIBUTING.md#optional-data Optional Data}
*/
export type License = SPDXLicense | CustomLicense;
// eslint-disable-next-line @typescript-eslint/naming-convention
export type SPDXLicense = {
type: string;
url: string;
};
export type CustomLicense = {
type: 'custom';
url: string;
};
declare const icons: IconData[];
export default icons;
export = icons;

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>1001Tracklists</title><path d="M8.0957 1.334v1.3457H6.7461v1.3457H5.3984V5.371H4.0488v1.3457H2.6992v6.6816H1.3496v1.3477H0v2.4512h1.3496v1.3457h1.3496v1.3457h2.457v-7.836H3.8067V7.8223h1.3497V6.4766h1.3496V5.1309h1.3496V3.7852h8.289v1.3457h1.3496v1.3457h1.3496v1.3457h1.3497v4.2304h-1.3497v7.836h2.457V18.543h1.3497v-1.3457H24V14.746h-1.3496v-1.3477h-1.3496V6.7168h-1.3496V5.3711h-1.3496V4.0254h-1.3477V2.6797h-1.3496V1.334Zm1.3711 8v1.3515H8.1113v3.8165h2.4688v-4.0567h2.9512v4.3477h-1.3555v1.3515h-1.3535v2.4649h2.4668v-2.7051H16v-5.2188h-1.3555V9.334Zm1.3555 10.8691v2.463h2.4668v-2.463z"/></svg>

After

Width:  |  Height:  |  Size: 677 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>1&amp;1</title><path d="M0 0v24h24V0zm11.717 5.792c1.564 0 2.671 1.04 2.671 2.468 0 1.044-.428 1.819-1.746 2.915l1.952 2.648c.163-.147.303-1.046.274-1.777-.003-.087-.022-.341-.04-.62h1.814c0 .244.024.595.024.683 0 1.426-.224 2.327-.909 3.198L17.2 17.22h-2.232l-.503-.678c-.823.659-1.546.905-2.713.898-2.284-.013-3.857-1.173-4.005-3.239-.089-1.235.737-2.506 2.32-3.42C9.049 9.477 8.84 9.025 8.84 8.207c0-1.392 1.191-2.415 2.878-2.415zm-9.424.134h4.064v11.296H4.1V7.735H2.293zm14.45 0h4.065v11.296H18.55V7.735h-1.807zm-5.036 1.49c-.545 0-.931.358-.931.845 0 .47.14.726.79 1.562.772-.557 1.058-1.075 1.058-1.58 0-.504-.354-.828-.917-.828zm-.517 4.811c-1.002.663-1.404 1.31-1.386 1.919.03.928.806 1.522 1.948 1.522.703 0 1.174-.257 1.579-.594z"/></svg>

After

Width:  |  Height:  |  Size: 826 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>1.1.1.1</title><path d="M5.389 0A5.377 5.377 0 0 0 0 5.389V18.61A5.377 5.377 0 0 0 5.389 24H18.61A5.377 5.377 0 0 0 24 18.611V5.39A5.377 5.377 0 0 0 18.611 0Zm11.546 4.595h.942v3.122h.69v.868h-.69v1.201h-1.001V8.585H14.68v-.964zm-6.07.589h2.523v14.842h-3.094V9.79H6.68V7.805c.95-.042 1.616-.103 1.997-.184.606-.13 1.1-.39 1.48-.779.26-.266.457-.62.592-1.064.077-.267.116-.464.116-.594Zm5.989.73L15.513 7.72h1.365V5.915Z"/></svg>

After

Width:  |  Height:  |  Size: 506 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>1Panel</title><path d="m12 0 10.349 6v12L12 24 1.651 18V6zm0 .326L1.897 6.158v11.664L12 23.653l10.103-5.831V6.158zM8.84 20.523l-5.801-3.349V6.826L12 1.653l2.23 1.287-8.925 5.195v7.73l5.792 3.345zm6.299-17.058 5.822 3.361v10.348L12 22.347l-2.274-1.312 8.969-5.17v-7.73l-5.823-3.362zm-2.137 3.35v2.869l.024 7.666-.691.384-2.18-1.249.008-6.801H8.958L8.95 8.351l3.412-1.965z"/></svg>

After

Width:  |  Height:  |  Size: 457 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>1Password</title><path d="M12 .007C5.373.007 0 5.376 0 11.999c0 6.624 5.373 11.994 12 11.994S24 18.623 24 12C24 5.376 18.627.007 12 .007Zm-.895 4.857h1.788c.484 0 .729.002.914.096a.86.86 0 0 1 .377.377c.094.185.095.428.095.912v6.016c0 .12 0 .182-.015.238a.427.427 0 0 1-.067.137.923.923 0 0 1-.174.162l-.695.564c-.113.092-.17.138-.191.194a.216.216 0 0 0 0 .15c.02.055.078.101.191.193l.695.565c.094.076.14.115.174.162.03.042.053.087.067.137a.936.936 0 0 1 .015.238v2.746c0 .484-.001.727-.095.912a.86.86 0 0 1-.377.377c-.185.094-.43.096-.914.096h-1.788c-.484 0-.726-.002-.912-.096a.86.86 0 0 1-.377-.377c-.094-.185-.095-.428-.095-.912v-6.016c0-.12 0-.182.015-.238a.437.437 0 0 1 .067-.139c.034-.047.08-.083.174-.16l.695-.564c.113-.092.17-.138.191-.194a.216.216 0 0 0 0-.15c-.02-.055-.078-.101-.191-.193l-.695-.565a.92.92 0 0 1-.174-.162.437.437 0 0 1-.067-.139.92.92 0 0 1-.015-.236V6.25c0-.484.001-.727.095-.912a.86.86 0 0 1 .377-.377c.186-.094.428-.096.912-.096z"/></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>2FAS</title><path d="M12 0c-.918 0-1.833.12-2.72.355L4.07 1.748a2.64 2.64 0 0 0-1.96 2.547v9.115a7.913 7.913 0 0 0 3.552 6.606l5.697 3.765a1.32 1.32 0 0 0 1.467-.008l5.572-3.752a7.931 7.931 0 0 0 3.493-6.57V4.295a2.638 2.638 0 0 0-1.961-2.547L14.72.355A10.594 10.594 0 0 0 12 0ZM7.383 5.4h9.228c.726 0 1.32.594 1.32 1.32 0 .734-.587 1.32-1.32 1.32H7.383c-.727 0-1.32-.593-1.32-1.32 0-.726.593-1.32 1.32-1.32zM7.38 9.357h3.299c.727 0 1.32.595 1.32 1.32a1.32 1.32 0 0 1-1.318 1.32H7.38c-.726 0-1.32-.592-1.32-1.32 0-.725.594-1.32 1.32-1.32zm0 3.96c.727 0 1.32.593 1.32 1.32 0 .727-.586 1.318-1.32 1.318-.726 0-1.32-.592-1.32-1.318 0-.727.594-1.32 1.32-1.32z"/></svg>

After

Width:  |  Height:  |  Size: 742 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>2K</title><path d="M0 .002v23.997h24V.002H0Zm10.962 5.592c2.36 0 4.443.416 3.799 2.423-.434 1.365-2.017 1.918-3.114 2.109l-2.757.489c-.655.114-1.039.277-1.3.549h6.012l-.818 2.529 3.446-2.529h3.755l-4.091 2.772 2.07 4.402h-3.766l-1.082-2.754-1.197.826-.619 1.928H8.471l1.718-5.374h-6.25C4.874 10.2 6.891 9.36 8.731 8.989l2.264-.457c.387-.07.64-.259.736-.557.136-.416-.32-.581-.994-.581-.784 0-1.604.074-1.984 1.005H5.646c1.009-2.474 3.483-2.805 5.316-2.805Z"/></svg>

After

Width:  |  Height:  |  Size: 543 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>30 seconds of code</title><path d="M13.895 12c0 .734-.593 1.328-1.324 1.328h-.58a6.666 6.666 0 0 1-.389 5.09 6.633 6.633 0 0 1-2.22 2.508 6.6 6.6 0 0 1-9.028-1.619l-.044-.06c-.47-.563-.397-1.4.163-1.872a1.32 1.32 0 0 1 1.864.164l.158.207a3.972 3.972 0 0 0 3.523 1.63 3.96 3.96 0 0 0 3.226-2.163A3.997 3.997 0 0 0 7.771 12 3.977 3.977 0 0 0 9.45 9.927a3.997 3.997 0 0 0-1.537-4.644 3.96 3.96 0 0 0-5.417.971l-.158.208a1.32 1.32 0 0 1-1.864.163A1.332 1.332 0 0 1 .31 4.754l.044-.061a6.622 6.622 0 0 1 2.583-2.128 6.595 6.595 0 0 1 6.446.51 6.634 6.634 0 0 1 2.22 2.506 6.662 6.662 0 0 1 .389 5.09h.58c.73 0 1.323.595 1.323 1.329Zm-.067 5.21a8.28 8.28 0 0 1-1.196 2.811 6.628 6.628 0 0 0 4.717 1.964A6.654 6.654 0 0 0 24 15.328V8.672a6.654 6.654 0 0 0-6.651-6.657c-1.844 0-3.513.75-4.717 1.964a8.28 8.28 0 0 1 1.196 2.81 3.99 3.99 0 0 1 7.511 1.883v6.656a3.992 3.992 0 0 1-7.51 1.883Z"/></svg>

After

Width:  |  Height:  |  Size: 968 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>365 Data Science</title><path d="M1.4995 13.6448v-.8577h.8188c.5752 0 1.183-.152 1.1905-.6681 0-.3178-.2587-.7385-1.1666-.7385-.5024 0-1.183.1746-1.183.6832h-1.07c0-1.1993 1.2156-1.6326 2.2605-1.6326 1.07 0 2.2204.5086 2.2291 1.6916a1.1716 1.1716 0 0 1-.7861 1.0876c.5425.1746.9243.6995.9243 1.168 0 1.3588-1.3049 1.7581-2.3987 1.7581-1.0938 0-2.3108-.4345-2.3183-1.6979h1.0775c0 .5727.7862.7711 1.2483.7711.5426 0 1.2647-.2223 1.2647-.8188 0-.3328-.1871-.746-1.2081-.746zm5.0083-1.4304v.8339c.2512-.3768.8666-.5878 1.3124-.5878 1.1428 0 2.3422.4685 2.3422 1.8512 0 1.232-1.207 1.8436-2.3497 1.8436-1.1429 0-2.3673-.6116-2.3673-1.8587V12.222c0-1.2395 1.168-1.8184 2.3346-1.8184 1.232 0 2.3259.476 2.3259 1.6439H9.0422c0-.4923-.628-.7385-1.2396-.7385-.6405-.0075-1.2885.3341-1.2885.9369zm2.5934 2.0973c0-.6116-.5677-.9369-1.281-.9369-.7133 0-1.3212.3177-1.3124.9369.0088.6191.6079.908 1.3049.908.6718 0 1.2885-.2964 1.2885-.908zm5.9967-2.8119h-3.063v.977h1.1013c1.2082 0 2.2857.4848 2.2781 1.7872 0 1.2633-1.0787 1.8674-2.2216 1.8674-1.247 0-2.317-.437-2.3258-1.7406h1.0637c0 .6129.7133.771 1.2483.771.535 0 1.1742-.2385 1.1742-.8978.0088-.628-.6279-.81-1.2156-.81h-2.1488v-2.94h4.1092zm7.9169-3.6897a.9494.9494 0 0 0-.4559 1.7808l-1.9252 4.7183a.9444.9444 0 0 0-.7988.0829l-2.047-2.3422a.9432.9432 0 0 0-.089-1.27.9431.9431 0 0 0-1.4105 1.2412.943.943 0 0 0 1.2483.2498l2.0458 2.3422a.9518.9518 0 0 0-.2072.5927.9491.9491 0 0 0 .2654.6936.9493.9493 0 0 0 1.5701-.3198.9491.9491 0 0 0 .062-.3738.9432.9432 0 0 0-.3427-.7296l1.949-4.7723a.8264.8264 0 0 0 .137.0101.9493.9493 0 0 0 .9083-.5775.9493.9493 0 0 0-.2148-1.0547.9495.9495 0 0 0-.6936-.2654Z"/></svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>3M</title><path d="M18.903 5.954L17.17 13.03l-1.739-7.076h-5.099v2.613C9.72 6.28 7.56 5.706 5.558 5.674 3.12 5.641.563 6.701.469 9.936h3.373c0-.977.747-1.536 1.588-1.523 1.032-.008 1.508.434 1.533 1.124-.036.597-.387 1.014-1.525 1.014H4.303V12.9h1.03c.584 0 1.399.319 1.431 1.155.04.995-.652 1.435-1.501 1.443-1.517-.053-1.763-1.225-1.763-2.23H0c.015.677-.151 5.091 5.337 5.059 2.629.025 4.464-1.085 5.003-2.613v2.342h3.455v-7.632l1.867 7.634h3.018l1.875-7.626v7.634H24V5.954h-5.097zm-8.561 7.06c-.429-.893-1.034-1.284-1.376-1.407.714-.319 1.09-.751 1.376-1.614v3.021z"/></svg>

After

Width:  |  Height:  |  Size: 655 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>42</title><path d="M19.581 16.851H24v-4.439ZM24 3.574h-4.419v4.42l-4.419 4.418v4.44h4.419v-4.44L24 7.993Zm-4.419 0h-4.419v4.42zm-6.324 8.838H4.419l8.838-8.838H8.838L0 12.412v3.595h8.838v4.419h4.419z"/></svg>

After

Width:  |  Height:  |  Size: 285 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>4chan</title><path d="M11.07 8.82S9.803 1.079 5.145 1.097C2.006 1.109.78 4.124 3.055 4.802c0 0-2.698.973-2.698 2.697 0 1.725 4.274 3.54 10.713 1.32zm1.931 5.924s.904 7.791 5.558 7.991c3.136.135 4.503-2.82 2.262-3.604 0 0 2.74-.845 2.82-2.567.08-1.723-4.105-3.737-10.64-1.82zm-3.672-1.55s-7.532 2.19-6.952 6.813c.39 3.114 3.53 3.969 3.93 1.63 0 0 1.29 2.559 3.002 2.351 1.712-.208 3-4.67.02-10.794zm5.623-2.467s7.727-1.35 7.66-6.008c-.046-3.138-3.074-4.333-3.728-2.051 0 0-1-2.686-2.726-2.668-1.724.018-3.494 4.312-1.206 10.727z"/></svg>

After

Width:  |  Height:  |  Size: 614 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>4D</title><path d="M20.64 0v24H3.36V0h17.28zM10.49 11.827c-.115.138-5.882 6.789-5.983 6.9-.058.07-.187.194-.187.36 0 .153.187.208.36.208h4.4v-1.067H5.83c.49-.61 3.38-3.824 3.696-4.226v5.34c0 .194-.005.965-.043 1.602-.029.43-.13.637-.661.693-.23.027-.533.041-.662.041-.072 0-.115.083-.115.18 0 .097.072.167.23.167.777 0 1.539-.042 1.942-.042 1.236 0 2.646.097 3.178.097 2.618 0 4.099-.97 4.746-1.607.791-.776 1.539-2.093 1.539-3.81 0-1.622-.662-2.758-1.38-3.465-1.54-1.565-3.913-1.565-5.682-1.565-.56 0-1.035.027-1.064.027-.388.042-.345-.124-.59-.138-.158-.014-.258.055-.474.305zm1.898.443c1.108 0 2.719.166 4.027 1.372.604.554 1.367 1.676 1.367 3.408 0 1.414-.288 2.66-1.194 3.409-.849.706-1.812.984-3.265.984-1.122 0-1.683-.291-1.87-.54-.115-.153-.172-.694-.186-1.04 0-.097-.015-.29-.015-.568h1.021c.245 0 .317-.055.389-.18.1-.18.244-.735.244-.86 0-.11-.057-.166-.13-.166-.086 0-.273.139-.647.139h-.877v-5.584c0-.152.058-.222.173-.277.115-.056.676-.097.963-.097z"/></svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>500px</title><path d="M7.451 8.9995A3.0005 3.0005 0 1 0 10.4514 12a3.0275 3.0275 0 0 0-3.0006-3.0005Zm0 5.371A2.3554 2.3554 0 1 1 9.7912 12a2.3704 2.3704 0 0 1-2.3404 2.3704Zm6.448-5.371A3.0005 3.0005 0 1 0 16.8997 12a3.0005 3.0005 0 0 0-3.0005-3.0005Zm0 5.371A2.3554 2.3554 0 1 1 16.2396 12a2.3314 2.3314 0 0 1-2.3404 2.3704zM2.29 10.7997a2.0224 2.0224 0 0 0-1.5903.42V9.6297h2.7005c.09 0 .15-.03.15-.3 0-.2701-.12-.2701-.18-.2701H.3997a.27.27 0 0 0-.27.27V11.97c0 .15.09.18.24.21a.228.228 0 0 0 .27-.06A1.7073 1.7073 0 0 1 2.14 11.4 1.5603 1.5603 0 0 1 3.4902 12.72 1.5183 1.5183 0 0 1 2.17 14.4004h-.18a1.5303 1.5303 0 0 1-1.4103-.9901c-.03-.09-.09-.15-.33-.06-.2401.09-.2701.15-.2401.24a2.1274 2.1274 0 0 0 2.7005 1.2602A2.1274 2.1274 0 0 0 3.9703 12.15 2.1004 2.1004 0 0 0 2.29 10.7998zm16.65-1.7703a1.6263 1.6263 0 0 0-1.4403 1.6203v2.6704c0 .15.12.18.3.18s.3001-.03.3001-.18v-2.6704a1.0082 1.0082 0 0 1 .8702-1.0202.9872.9872 0 0 1 .7501.24.9572.9572 0 0 1 .33.7202 1.2002 1.2002 0 0 1-.21.57A.9452.9452 0 0 1 19 11.55c-.12 0-.21 0-.24.27 0 .1801 0 .2701.15.3001a1.4763 1.4763 0 0 0 .8701-.18 1.6113 1.6113 0 0 0 .8702-1.2602 1.5543 1.5543 0 0 0-1.4463-1.6803.8311.8311 0 0 1-.264.03zm3.9307 1.5602 1.0802-1.0801c.03-.03.12-.12-.06-.3301a.3.3 0 0 0-.2101-.12.156.156 0 0 0-.12.06l-1.0802 1.0802-1.0802-1.1102c-.09-.09-.18-.06-.33.06-.15.12-.15.24-.06.33l1.0801 1.0802-1.0862 1.1102a.228.228 0 0 0-.06.12.252.252 0 0 0 .12.2101.483.483 0 0 0 .21.12.318.318 0 0 0 .1501-.06l1.0802-1.0802 1.0802 1.0802a.156.156 0 0 0 .12.06.3.3 0 0 0 .21-.12c.09-.12.12-.24.03-.3z"/></svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>7Zip</title><path d="M0 18.858h24V8.181H10.717V5.142H0ZM2.021 7.271h6.657v1.994c-1.74 2.09-2.84 4.502-2.948 7.404H3.477c.09-2.501.353-4.954 2.283-6.994l.033-.033H2.021Zm8.45 1.253h13.215v10.143H10.47Zm6.01 1.213v6.871h1.482v-6.87Zm2.755.043v6.912h1.616v-2.42h1.029c.43-.001.754-.29.969-.716.427-.848.429-2.257-.024-3.092-.227-.419-.571-.697-1.033-.684zm-7.924.002v1.596h2.217l-2.304 3.736v1.54h4.287V15.1h-2.698l2.786-3.909v-1.41Zm9.452 1.512h.595c.164-.006.287.081.371.217.17.273.172.736.004.99a.364.364 0 0 1-.373.176l-.55.047z"/></svg>

After

Width:  |  Height:  |  Size: 616 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>99designs</title><path d="M21.6504 13.7786c0 1.163-.943 2.1059-2.1059 2.1059-1.163 0-2.1059-.943-2.1059-2.1059 0-1.163.943-2.1059 2.1059-2.1059 1.163 0 2.1059.943 2.1059 2.106zm-7.557-3.5718c0 1.0842-.8775 2.0229-2.0228 2.0229-1.117 0-2.0231-.9059-2.0231-2.0229s.906-2.0231 2.0231-2.0231c1.117 0 2.0229.906 2.0229 2.0231zm-7.6605 0c0 1.0822-.8759 2.0229-2.0231 2.0229-1.117 0-2.0228-.9059-2.0228-2.0229s.9058-2.0231 2.0228-2.0231 2.0231.906 2.0231 2.0231zm11.008 7.663c.9166.3985 2.2434.466 3.1223.0578.392-.182.7534-.4776 1.0847-.8858v.8776H24V6.0624h-2.4847v4.2717c-.707-.6853-1.4491-.9773-2.451-.9773-1.0589 0-1.9244.3524-2.5844.9162.0003-.0221.0006-.044.0006-.0662 0-2.435-1.9751-4.4098-4.4099-4.4098-1.6397 0-3.0704.8951-3.8305 2.2236C7.4803 6.692 6.0493 5.797 4.4098 5.797 1.9748 5.797 0 7.7718 0 10.2068c0 2.3312 1.81 4.2403 4.101 4.399L2.188 17.9193H5.057c1.061-1.8422 2.1222-3.6844 3.1831-5.5266.712 1.244 2.0124 2.1083 3.5216 2.213l-1.913 3.3136h2.8688l2.2372-3.8842c.0665 1.5842.868 3.1305 2.4863 3.8345"/></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>9GAG</title><path d="m17.279 21.008 5.193-2.995V5.992l-5.193-2.996C14.423 1.348 12.048 0 12 0c-.048 0-2.423 1.348-5.279 2.996L1.528 5.992v2.354l5.193 2.996c2.856 1.648 5.232 2.996 5.28 2.996.048 0 1.469-.797 3.157-1.772a229.633 229.633 0 0 1 3.097-1.772c.016 0 .027 1.096.027 2.437l-.002 2.436-3.076 1.772c-1.692.975-3.115 1.783-3.163 1.795-.048.013-1.471-.776-3.162-1.752-1.69-.976-3.113-1.775-3.161-1.775-.155 0-4.036 2.274-4.011 2.35.031.093 10.136 5.937 10.276 5.943.057.002 2.44-1.344 5.296-2.992ZM9.847 8.391c-1.118-.65-2.033-1.2-2.033-1.222 0-.071 4.06-2.376 4.186-2.376.125 0 4.186 2.305 4.186 2.376 0 .063-4.047 2.375-4.184 2.39-.068.007-1.037-.519-2.155-1.168Z"/></svg>

After

Width:  |  Height:  |  Size: 757 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>ABB</title><path d="M13.086 16.594v-4.427h3.035c.25.418.362.947.362 1.476 0 1.559-1.17 2.867-2.84 2.951zm-.279-4.455v4.455h-2.784v-4.455zm3.147-.278h-2.868V7.406h.668c1.086 0 1.949.863 1.949 1.949 0 .64-.334 1.225-.835 1.587.417.223.807.529 1.086.919m-3.147-4.455v4.455h-2.784V7.406zm7.796 9.188v-4.427h3.035c.251.418.362.947.362 1.476 0 1.559-1.169 2.867-2.84 2.951zm-.278-4.455v4.455h-2.784v-4.455zm3.146-.278h-2.868V7.406h.668c1.086 0 1.949.863 1.949 1.949 0 .64-.334 1.225-.835 1.587.418.223.808.529 1.086.919m-3.146-4.455v4.455h-2.784V7.406zM1.587 12.139h2.868v2.506H2.979l-.668 1.949H0zm2.868-4.733v4.455H1.671l1.587-4.455zm.278 7.239v-2.506h2.868l1.587 4.455H6.877l-.668-1.949zm2.784-2.784H4.733V7.406H5.93z"/></svg>

After

Width:  |  Height:  |  Size: 801 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Abbott</title><path d="M20.812 2.4H0v3.197h19.773V5.6a1.03 1.03 0 0 1 1.032 1.031v10.742l-.004.007a1.034 1.034 0 0 1-1.034 1.025H4.23c-.569 0-1.033-.46-1.033-1.033v-4.34c0-.57.464-1.032 1.033-1.032H17.6V8.803H3.188A3.185 3.185 0 0 0 0 11.99v6.423A3.188 3.188 0 0 0 3.188 21.6h17.624A3.187 3.187 0 0 0 24 18.412V5.587A3.186 3.186 0 0 0 20.812 2.4"/></svg>

After

Width:  |  Height:  |  Size: 432 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Abbvie</title><path d="M23.186 20.17c-1.533 0-2.14-.612-2.347-1.838l-.406-1.74c-.413.72-2.453 3.579-6.945 3.579H8.89C1.94 20.17 0 15.467 0 12c0-3.885 2.347-8.17 8.884-8.17h4.905c5.005 0 7.759 2.853 8.372 6.431.512 2.96 1.839 9.91 1.839 9.91zM13.076 6.378h-3.88c-4.698 0-6.231 2.965-6.231 5.623 0 2.653 1.533 5.618 6.236 5.618h3.875c4.904 0 6.236-3.065 6.236-5.618 0-2.246-1.231-5.618-6.236-5.618z"/></svg>

After

Width:  |  Height:  |  Size: 483 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>AB Download Manager</title><path d="M10.98 0c-.235 0-.425.2-.425.446V8.92c0 .246-.19.446-.425.446h-.704c-.346 0-.547.41-.346.705l2.574 3.782c.17.25.522.25.692 0l2.574-3.782c.201-.295 0-.705-.346-.705h-.704a.436.436 0 0 1-.425-.446V.446A.436.436 0 0 0 13.02 0ZM7.387 1.562a.732.732 0 0 0-.405.161l-1.096.883a.77.77 0 0 0-.123 1.066.735.735 0 0 0 1.045.126l1.096-.882a.77.77 0 0 0 .123-1.067.738.738 0 0 0-.64-.287Zm9.346 0a.737.737 0 0 0-.64.287.77.77 0 0 0 .123 1.067l1.096.882c.323.26.79.204 1.045-.126a.77.77 0 0 0-.123-1.066l-1.096-.883a.733.733 0 0 0-.405-.16ZM3.039 6.036a.745.745 0 0 0-.675.48l-.512 1.326c-.15.39.037.831.42.985a.74.74 0 0 0 .965-.428l.512-1.325a.765.765 0 0 0-.419-.985.728.728 0 0 0-.291-.053Zm18.042 0a.738.738 0 0 0-.29.053.765.765 0 0 0-.42.985l.512 1.325a.74.74 0 0 0 .965.428.765.765 0 0 0 .42-.985l-.512-1.325a.745.745 0 0 0-.675-.481ZM0 12a12 12 0 0 0 .913 4.592 11.997 11.997 0 0 0 2.42 3.703c.684-.681 1.565-1 2.489-1.053.925-.055 1.893.156 2.745.532a8.497 8.497 0 0 0 6.866 0c1.702-.751 3.865-.843 5.234.52a11.997 11.997 0 0 0 2.42-3.702A12 12 0 0 0 24 12h-3.687c-1.301 0-2.315 1.094-2.813 2.296a6 6 0 0 1-11.087 0C5.915 13.094 4.902 12 3.601 12Zm5.875 7.769c-.727.04-1.407.275-1.957.727-.073.06-.14.119-.204.18a11.997 11.997 0 0 0 3.694 2.41 12 12 0 0 0 9.184 0 11.997 11.997 0 0 0 3.694-2.41 3.977 3.977 0 0 0-.204-.18c-1.173-.963-2.96-.892-4.436-.24a9.023 9.023 0 0 1-7.292 0c-.478-.211-1.418-.546-2.48-.487Z"/></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>About.me</title><path d="M3.158 9.897v4.131h.65v-.408c.23.297.577.483.961.483.768 0 1.332-.582 1.332-1.573 0-.967-.558-1.568-1.332-1.568-.372 0-.719.168-.96.49V9.897Zm10.285.322v.818h-.495v.563h.495v1.729c0 .501.26.774.769.774.297 0 .49-.087.607-.192l-.155-.496a.4.4 0 0 1-.285.112c-.186 0-.285-.155-.285-.36V11.6h.607v-.563h-.607v-.818zm-5.488.743c-.954 0-1.536.706-1.536 1.567 0 .855.582 1.574 1.536 1.574s1.537-.719 1.537-1.574c0-.86-.583-1.567-1.537-1.567m14.577 0c-.886 0-1.518.7-1.518 1.567 0 .948.663 1.574 1.567 1.574.47 0 .91-.155 1.214-.44l-.297-.427c-.217.216-.557.334-.855.334-.564 0-.898-.378-.948-.824H24v-.16c0-.942-.57-1.624-1.468-1.624m-4.576 0c-.459 0-.849.298-.979.477v-.402h-.65v2.991h.65v-2.093c.137-.192.403-.397.694-.397.354 0 .49.217.49.54v1.95h.65v-2.093c.13-.199.403-.397.694-.397.353 0 .495.217.495.54v1.95h.65v-2.161c0-.607-.315-.905-.86-.905-.453 0-.85.28-1.016.545-.1-.322-.372-.545-.818-.545m-16.55 0c-.477 0-.91.15-1.257.484l.272.452a1.2 1.2 0 0 1 .886-.384c.41 0 .7.21.7.557v.446c-.223-.254-.563-.384-.972-.384-.49 0-1.035.285-1.035.979 0 .656.551.99 1.035.99.396 0 .75-.142.972-.402v.328h.65V12.04c0-.799-.582-1.078-1.25-1.078m8.449.075v2.118c0 .607.322.948.966.948.47 0 .842-.235 1.053-.471v.396h.65v-2.991h-.65v2.1a.99.99 0 0 1-.762.39c-.372 0-.607-.149-.607-.613v-1.877zm12.67.458c.589 0 .83.434.85.787H21.69c.025-.36.285-.787.837-.787m-17.942.043c.514 0 .843.415.843.992 0 .582-.329.997-.843.997a.98.98 0 0 1-.774-.397v-1.189a.98.98 0 0 1 .774-.403m3.372 0c.558 0 .861.465.861.991 0 .533-.303.998-.86.998-.552 0-.862-.465-.862-.997 0-.527.31-.992.861-.992m-6.66 1.041c.279 0 .557.105.712.31v.458c-.155.204-.433.31-.712.31-.366 0-.644-.21-.644-.539 0-.322.278-.539.644-.539m14.269.65a.44.44 0 0 0-.434.428c0 .235.198.44.434.44a.445.445 0 0 0 .434-.44.44.44 0 0 0-.434-.428"/></svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Abstract</title><path d="M12 0c9.601 0 12 2.399 12 12 0 9.601-2.399 12-12 12-9.601 0-12-2.399-12-12C0 2.399 2.399 0 12 0zm-1.969 18.564c2.524.003 4.604-2.07 4.609-4.595 0-2.521-2.074-4.595-4.595-4.595S5.45 11.449 5.45 13.969c0 2.516 2.065 4.588 4.581 4.595zm8.344-.189V5.625H5.625v2.247h10.498v10.503h2.252zm-8.344-6.748a2.343 2.343 0 11-.002 4.686 2.343 2.343 0 01.002-4.686z"/></svg>

After

Width:  |  Height:  |  Size: 463 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>abuse.ch</title><path d="M22.8924 10.3775c.0193 0 .1179-.1827.3828-.2534.1078-.0287.3585-.0506.5405.0957.14.1127.1843.2965.1843.4838v1.127h-.2747V10.748c0-.362-.1831-.4094-.3296-.4094-.2709 0-.444.2105-.5033.296v1.1961h-.2746v-2.566h.2746zm-.9543.0514c-.189-.072-.391-.1213-.6007-.0514-.1745.0582-.2643.1976-.3101.3154-.032.084-.0479.1885-.0479.3137 0 .1758.0436.332.1436.4519.1925.2208.5373.2171.8417.0921v.2286c-.066.0388-.1671.0616-.186.0656-.088.0215-.5326.111-.8418-.179-.3632-.3404-.2155-.937-.2109-.9551.038-.1422.1081-.2924.2357-.4058.348-.3025.805-.2036.9764-.1046zm-5.9987 2.7958h1.7657v.5501h-2.423v-3.5904h2.3264v.5501h-1.669v.9285h1.4329v.55h-1.433zm-2.2842-.4803c0-.3335-.317-.4122-.8104-.5125a4.1973 4.1973 0 0 1-.3998-.1074c-.3907-.132-.5171-.3607-.5662-.4588-.1187-.2373-.1168-.6487.0134-.9231.2446-.5224.7924-.6253 1.186-.6253.444 0 .8488.1051 1.0761.2013v.5635c-.186-.0733-.365-.1261-.5367-.1583-.2899-.058-1.1565-.181-1.1565.4213 0 .0776.0048.2482.2146.373.2305.1308.4677.1222.9366.2683.1395.0412.263.0993.3703.1744.1073.0752.1923.1736.2549.2952.0626.1199.0939.2737.0939.4616 0 .3168-.1006.6336-.4132.8533-.3229.2255-.7791.271-1.0949.271-.3327 0-.7674-.0646-1.0465-.22v-.5555c.3126.1358.6309.22 1.0385.22.3188 0 .8399-.0718.8399-.542zm-5.2521.8855c-.5869-.3576-.5957-1.0336-.5957-1.331v-2.1145h.6574V12.24c0 .242.0154.7371.3891.9419.2631.1406.66.1406.923 0 .374-.2048.3892-.7003.3892-.9419v-2.0555h.6574v2.1146c0 .1502-.0089.2862-.0268.4078-.036.2726-.1623.6781-.577.9231-.4836.2828-1.3341.2865-1.8166 0zm-1.6215-2.4902c0 .1557-.0348.2988-.1046.4294-.0698.1288-.1852.2361-.3462.322v.0107c.1734.059.4509.1987.5582.5072.077.2086.0707.5612-.1422.8506-.0698.093-.1628.179-.2791.2576-.3154.2135-.7248.2434-.9768.255-.4364.0058-.873.0027-1.3095.0027v-3.5904h1.2478c.2853 0 .6671.0247.9607.2361.2757.193.3917.4718.3917.7191zM4.839 12.2131v1.0116h.4293a4.68 4.68 0 0 0 .2952-.008c.2888-.0252.5883-.114.6681-.3622.018-.0576.1233-.455-.3193-.5957-.1148-.0357-.2588-.0457-.4508-.0457zm.593-.5501c.1444 0 .4811-.0001.6091-.2227.0837-.143.0917-.3476-.008-.4991-.1227-.191-.418-.2067-.6548-.2067H4.839v.9285zm-4.0061-1.4794L0 13.7736h.7012c.2284-.5948.457-1.1895.6855-1.7843.0984-.252.2107-.5654.336-.9409h.0117c.3084.92.6724 1.8201 1.0215 2.7252h.6953l-1.4258-3.59zm17.604 5.3065h.2932V8.51h-.2932z"/></svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Academia</title><path d="M22.033 21.18L13.77.459H7.869l1.049 2.623L1.836 21.18C1.574 22.098.787 22.23 0 22.361v1.18h6.82v-1.18C4.984 22.23 3.934 21.967 4.721 20c.131-.131.656-1.574 1.311-3.41h8.393l1.18 3.016c.131.525.262.918.262 1.311 0 1.049-.918 1.443-2.623 1.443v1.18H24v-1.18c-.918-.13-1.705-.393-1.967-1.18zM6.82 14.361a363.303 363.303 0 0 0 3.279-8.525l3.41 8.525H6.82z"/></svg>

After

Width:  |  Height:  |  Size: 463 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Accenture</title><path d="m.66 16.95 13.242-4.926L.66 6.852V0l22.68 9.132v5.682L.66 24Z"/></svg>

After

Width:  |  Height:  |  Size: 174 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Accusoft</title><path d="M14.1774 4.2143c-.3824.0022-4.0063.02-4.3665.0222-.618.0044-.776-.0044-.8738.109-.0511.06-.1334.1645.1535.5246.2868.358 8.7775 11.221 8.9931 11.481.2735.3313.527.4447.638.4625.178.0267.4003-.0667.5203-.1134.1179-.0467 4.3243-1.7853 4.4155-1.8342.14-.0756.1312-.289.0378-.4469-.0934-.16-.229-.3335-.3069-.429-.08-.0957-7.6903-9.1956-7.7703-9.2956-.1467-.1845-.3602-.3602-.4447-.389-.0845-.029-.2045-.0935-.996-.0912zm-4.0152 5.1313s-.4492.06-.9427.5625c-.338.349-9.0776 8.9487-9.1243 9.0154-.0423.06-.1468.1756-.0645.2401.0422.0333.4513-.1.6559-.1734.0289 0 4.2931-1.3607 4.2931-1.3607.02-.0222-.0022-.0022.0222-.02-.0133-.189-.0289-.9804-.0355-1.036-.02-.1579.0556-.2223.109-.258.0533-.0355.1533-.0755.1533-.0755l3.4706-1.265c.0222-.029 3.3193-3.0638 3.3838-3.1216v-.0422c-.029-.0222-.04-.06-.0645-.0867-.0156-.0067-1.8564-2.3856-1.8564-2.3789zm1.8497 5.0624c-.1156.0089-.3601.029-.5424.109-.1823.08-5.4426 1.9787-5.6316 2.052-.189.0734-.4269.1334-.4135.2846.0066.0934.0733.1.1734.1312.1.0333 11.2786 2.5212 11.5477 2.5768.269.0556 1.1294.2934 1.5763.2045.24-.0334.3535-.0934.4313-.14.0778-.0467 4.6422-2.8503 4.7156-2.9037.0711-.0533.1223-.0889.1312-.1756.0044-.0333-.0912-.109-.1957-.1312a321.6128 321.6128 0 0 0-1.1139-.2179l-.309-.0555s-4.311 1.8897-4.4065 1.9342c-.12.0556-.2935.1-.4447.0867-.3157-.0289-.558-.2067-.9293-.6336l-2.1388-2.7724s-.936-.1512-1.2673-.1957c-.3313-.0445-1.0671-.16-1.1828-.1534z"/></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>AccuWeather</title><path d="M6.74 6.772a7.436 7.436 0 0 1 10.519 0 7.432 7.432 0 0 1 0 10.515 7.436 7.436 0 0 1-10.52 0c-2.904-2.905-2.904-7.64 0-10.515M12 20.337c-4.59 0-8.338-3.747-8.338-8.337s3.748-8.308 8.338-8.308c4.591 0 8.31 3.748 8.31 8.308 0 4.619-3.719 8.337-8.31 8.337zm12-8.366L21.27 9.5l1.103-3.514-3.603-.784-.784-3.602-3.515 1.133L11.97.004l-2.47 2.73L5.986 1.63 5.2 5.231l-3.602.785 1.133 3.515L0 12.03l2.732 2.47-1.105 3.514 3.603.784.784 3.603 3.516-1.134 2.5 2.731 2.468-2.73 3.516 1.103.785-3.602 3.603-.813-1.134-3.515L24 11.97z"/></svg>

After

Width:  |  Height:  |  Size: 636 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Acer</title><path d="M23.943 9.364c-.085-.113-.17-.198-.595-.226-.113 0-.453-.029-1.048-.029-1.56 0-2.636.482-3.175 1.417.142-.935-.765-1.417-2.749-1.417-2.324 0-3.798.935-4.393 2.834-.226.709-.226 1.276-.056 1.73h-.567c-.425.027-.992.056-1.36.056-.85 0-1.39-.142-1.588-.425-.17-.255-.17-.737.057-1.446.368-1.162 1.247-1.672 2.664-1.672.737 0 1.445.085 1.445.085.085 0 .142-.113.142-.198l-.028-.085-.057-.397c-.028-.255-.227-.397-.567-.453-.311-.029-.567-.029-.907-.029h-.028c-1.842 0-3.146.624-3.854 1.814.255-1.219-.596-1.814-2.551-1.814-1.105 0-1.9.029-2.353.085-.368.057-.595.199-.68.454l-.17.51c-.028.085.029.142.142.142.085 0 .425-.057.992-.086a24.816 24.816 0 0 1 1.672-.085c1.077 0 1.559.284 1.389.822-.029.114-.114.199-.255.227-1.02.17-1.842.284-2.438.369-1.7.226-2.692.736-2.947 1.587-.369 1.162.538 1.728 2.72 1.728 1.078 0 2.013-.056 2.75-.198.425-.085.652-.17.737-.453l.396-1.304c-.028 1.304.85 1.955 2.721 1.955.794 0 1.559-.028 1.927-.085.369-.056.567-.141.652-.425l.085-.396c.397.623 1.276.935 2.608.935 1.417 0 2.239-.029 2.465-.114a.523.523 0 0 0 .369-.311l.028-.085.17-.539c.029-.085-.028-.142-.142-.142l-.906.057c-.596.029-1.077.057-1.418.057-.651 0-1.076-.057-1.332-.142-.368-.142-.538-.397-.51-.822l2.863-.368c1.275-.17 2.154-.567 2.579-1.19l-.992 3.315c-.028.057 0 .114.028.142.029.028.085.057.199.057h1.19c.198 0 .283-.114.312-.199l1.048-3.656c.142-.481.567-.708 1.36-.708.71 0 1.22 0 1.56.028h.028c.057 0 .17-.028.255-.17l.17-.51c0-.085 0-.17-.057-.227zM4.841 13.73c-.368.057-.907.085-1.587.085-1.219 0-1.729-.255-1.587-.737.113-.34.425-.567.935-.624l2.75-.368zm12.669-2.95c-.114.369-.652.624-1.616.766l-2.295.311.056-.198c.199-.624.454-1.02.794-1.247.34-.227.907-.34 1.7-.34 1.05.028 1.503.255 1.36.708Z"/></svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>ACM</title><path d="M7.435 12.25c-.08.025-.15.072-.202.135-.048.072-.073.158-.07.245 0 .15.038.252.12.308.077.056.194.082.352.082.087 0 .174-.02.264-.06.09-.038.174-.095.245-.165v-.66c-.168.015-.303.03-.405.045-.105.01-.207.034-.305.07zM12 0L0 12l12 12 12-12L12 0zm0 19.357C7.938 19.355 4.645 16.063 4.643 12 4.645 7.938 7.938 4.644 12 4.642c4.063.002 7.355 3.295 7.357 7.358-.002 4.063-3.294 7.355-7.357 7.357zM12 5.377v.002c-3.654 0-6.62 2.966-6.62 6.62s2.966 6.62 6.62 6.62 6.62-2.966 6.62-6.62c0-3.656-2.964-6.62-6.62-6.623zm-2.862 8.246h-.995v-.336l-.182.154c-.142.108-.304.188-.477.233-.082.02-.202.035-.352.035-.262.007-.515-.097-.698-.285-.187-.19-.277-.426-.277-.716 0-.238.046-.427.14-.574.1-.15.24-.27.405-.348.205-.09.423-.152.646-.18.25-.033.516-.06.803-.078v-.017c0-.176-.066-.297-.196-.363-.13-.07-.322-.102-.58-.102-.117 0-.254.02-.41.063-.158.044-.308.1-.458.164H6.42v-.77c.097-.03.256-.062.48-.1.217-.04.438-.06.663-.06.55 0 .95.092 1.2.276.25.183.375.462.375.837v2.168zm3.22-.167c-.07.028-.134.056-.2.086-.074.03-.15.058-.23.08-.094.024-.186.044-.27.06-.084.014-.196.022-.336.022-.263 0-.506-.033-.723-.1-.21-.062-.406-.165-.57-.307-.163-.142-.292-.32-.373-.52-.09-.21-.135-.457-.135-.738-.008-.27.042-.535.146-.78.09-.204.224-.384.392-.53.165-.134.355-.233.56-.29.22-.066.447-.096.675-.096.37 0 .732.087 1.06.255v.854h-.127c-.048-.043-.096-.085-.147-.124-.06-.048-.122-.09-.188-.126-.167-.095-.357-.144-.55-.14-.254 0-.45.086-.59.263-.138.177-.21.414-.21.714 0 .32.075.56.225.715.15.157.347.235.592.235.11 0 .222-.013.33-.042.153-.043.295-.12.415-.225.048-.04.088-.082.123-.11h.13v.843zm4.333.173v-1.597c0-.157 0-.29-.007-.397-.002-.09-.02-.18-.052-.263-.023-.066-.07-.12-.13-.15-.153-.064-.325-.063-.478.002-.086.04-.168.087-.244.14v2.263h-.993v-1.595c0-.156-.003-.286-.01-.396-.003-.09-.02-.18-.05-.264-.027-.066-.076-.12-.136-.15-.06-.033-.145-.048-.25-.048-.083 0-.165.02-.24.056-.078.04-.152.086-.228.136v2.262h-.995V10.44h.993v.356c.144-.125.296-.233.46-.323.148-.08.314-.12.484-.12.182-.004.36.045.514.14.153.1.27.244.34.414.19-.177.37-.314.54-.41.17-.096.34-.145.515-.145.136-.002.27.023.396.075.115.044.22.116.3.21.09.106.16.23.2.364.045.142.066.328.066.553v2.076h-.995z"/></svg>

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Acode</title><path d="M11.846 3.139c-.38 0-.73.405-.73.956q0 .127.027.262c.765 3.946 2.288 11.91 3 15.682.1.535.492.799.751.799h1.713c.31 0 .743-.397.743-.756a.4.4 0 0 0-.006-.072c-.118-.682-.243-1.404-.371-2.153a1.2 1.2 0 0 1-.64-.275 1.37 1.37 0 0 1-.435-.562c-.195-.483-.214-1.152.274-1.637q.138-.137.32-.322c-.686-4.002-1.413-8.274-1.889-11.079-.072-.427-.45-.843-.773-.843zm-1.666.023c-.323 0-.701.416-.774.844-.476 2.808-1.204 7.085-1.89 11.09l.312.314c.488.485.469 1.152.274 1.635v.002c-.093.229-.242.41-.434.562a1.2 1.2 0 0 1-.633.274l-.369 2.148a.4.4 0 0 0-.006.072c0 .36.432.758.742.758h1.713c.26 0 .651-.264.752-.799.441-2.338 1.194-6.29 1.885-9.894-.418-2.182-.812-4.232-1.1-5.715-.092-.476.006-.947.24-1.29zm6.894 4.145c-.3-.001-.609.277-.71.529-.131.322-.131.803.161 1.094.794.788 3.078 3.177 3.295 3.404-.217.228-2.5 2.614-3.295 3.402-.175.175-.245.418-.245.654 0 .158.031.313.083.442.102.252.41.53.711.53.529-.003 1.644 0 2.172 0 .195 0 .37-.103.545-.28.953-.964 2.767-2.836 3.781-3.912.068-.071.139-.135.194-.193a.87.87 0 0 0 .234-.602c0-.044-.004-.098-.008-.143a.84.84 0 0 0-.226-.54c-.055-.059-.126-.123-.194-.194a292 292 0 0 0-3.781-3.912c-.175-.177-.35-.28-.545-.28-.528 0-1.643.003-2.172 0m-12.32.027c-.195 0-.37.102-.545.28-.953.964-2.767 2.835-3.781 3.911-.068.072-.139.134-.194.192a.85.85 0 0 0-.226.543 2 2 0 0 0-.008.142c0 .168.046.403.234.602.055.058.126.122.194.193a292 292 0 0 0 3.781 3.912c.175.177.35.28.545.28.528 0 1.643-.002 2.172 0 .3 0 .609-.28.71-.532.131-.322.131-.803-.161-1.093-.794-.789-3.078-3.176-3.295-3.403.217-.227 2.501-2.615 3.295-3.404.175-.174.245-.417.245-.653 0-.157-.031-.312-.083-.44-.102-.252-.41-.531-.711-.53-.53.002-1.644 0-2.172 0z"/></svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>ActiGraph</title><path d="M10.18899 0 .8597 24h4.15078L12 4.97502h.0304L18.9587 24h4.1816L14.18736.91564C13.97372.36626 13.44452 0 12.85444 0ZM12 13.71434a2.47223 2.47223 0 0 0-2.4723 2.47211A2.47223 2.47223 0 0 0 12 18.65876a2.47223 2.47223 0 0 0 2.47211-2.4723 2.47223 2.47223 0 0 0-2.4721-2.47212z"/></svg>

After

Width:  |  Height:  |  Size: 387 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Activeloop</title><path d="M13.7361.0003a8.5022 8.5022 0 0 0-2.7609.4702c-.3783.1325-1.2203.4447-1.5419.6056.0128 0-.008 0 .0401-.0006.0935-.0238.8998-.151 1.1045-.151.0834-.002.166-.004.2481-.004 1.2312-.004 2.3252.2387 3.469 1.0638 1.6364 1.1735 2.7617 3.1987 3.1116 5.1009.2968 1.8754.058 3.8578-.539 5.7067-.8609 2.328-2.459 4.1353-4.3602 5.1857a.6094.6094 0 0 1-.038.0188c1.6566-.1906 3.3363-.8961 4.7763-2.0437.804-.6435 1.542-1.429 2.1756-2.347.5676-.8328 1.0025-1.7034 1.3145-2.593.792-2.2732.7474-4.64-.0864-6.5953-.003-.007-.004-.0114-.008-.02-.5296-1.2397-1.3621-2.309-2.5066-3.0945C16.8462.4216 15.2953-.005 13.736 0zM9.46 1.0828c-1.6656.1448-3.1906.971-3.914 1.4507-1.3998.9275-2.5442 2.1104-3.3955 3.4447-2.4213 3.7855-2.5442 8.7916.0946 12.7757 3.5659 5.3848 10.8204 6.8706 16.2116 3.3029 5.3818-3.5677 6.867-10.8262 3.3011-16.211a11.3559 11.3559 0 0 0-1.1047-1.4241l.1494.3073c.8323 1.959.8229 4.5048.0378 6.776-.3122.8897-.7473 1.7603-1.3148 2.593-.6338.918-1.3998 1.6563-2.2322 2.2714-2.743 2.0157-5.467 1.6655-5.4576 1.675-.8876-.0283-1.6979-.2138-2.4495-.4167-2.7807-.8422-4.5871-2.9052-4.502-5.5455.104-3.2555 3.282-5.801 7.1033-5.678.7093.0189 1.3809.1419 2.024.3217 1.2296.3501 2.5916 1.2017 3.424 2.2048l.0469.0548c-.0003-.4859-.017-1.0982-.1797-1.8623-.4068-1.8928-1.4659-3.596-3.1306-4.7411-1.239-.8517-2.6578-1.2492-4.086-1.3154-.209-.008-.4173-.0008-.626.016zm2.389 5.4591c-3.561.0366-6.4667 2.4597-6.5675 5.531-.0795 2.4028 1.5808 4.5078 4.0022 5.447a4.8728 4.8728 0 0 1-.1594-.2c-1.7566-2.3467-1.2053-6.0692 1.3878-8.6636 1.21-1.2118 2.4454-1.7402 3.0135-1.9512 0 0-.6286-.1413-1.3301-.159-.1326-.006-.3466-.004-.3466-.004z"/></svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Activision</title><path d="M1.88 8.91L0 14.284h.985l.27-.718h1.252l.269.718h.985zm3.224.359l-.537.984h2.15v4.03H7.7v-4.03h1.522l1.882 4.837 1.791-4.837h4.567l-.537-.984H12.18l-1.074 2.865L9.94 9.269zm16.21 1.163v3.762h.986v-1.523l1.7 1.702v-3.76h-.896v1.342zm-15.94.09c-1.075 0-1.881.807-1.881 1.881 0 1.075.806 1.88 1.88 1.88.448 0 .895-.179 1.164-.447L6 12.94c-.18.18-.358.27-.627.27a.897.897 0 0 1-.895-.896c0-.448.358-.896.895-.896.18 0 .448.089.537.268l.627-.715c-.27-.269-.716-.448-1.164-.448zm7.522 0v3.672h.985v-3.671zm2.148 0c-.358 0-.804.18-.804.896 0 .896 1.074 1.433.985 1.792-.09.179-.27.178-.359.178h-.626v.806h1.074c.448 0 .895-.269.895-.806 0-.985-1.253-1.611-.984-1.97 0-.09.178-.09.178-.09h.628v-.805zm1.255 0v3.672h.984v-3.671zm3.045 0c-1.075 0-1.88.807-1.88 1.881 0 .985.805 1.88 1.88 1.88 1.074 0 1.88-.805 1.88-1.88 0-1.074-.806-1.88-1.88-1.88zm-11.016.09v3.672h.986v-3.672zm11.016.896c.448 0 .895.358.895.895a.897.897 0 0 1-.895.896c-.538 0-.985-.358-.896-.896 0-.448.358-.895.896-.895zm-17.464.178l.27.896h-.54z"/></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>ActivityPub</title><path d="M10.91 4.442L0 10.74v2.52L8.727 8.22v10.077l2.182 1.26zM6.545 12l-4.364 2.52 4.364 2.518zm6.545-2.52L17.455 12l-4.364 2.52zm0-5.038L24 10.74v2.52l-10.91 6.298v-2.52L21.819 12 13.091 6.96z"/></svg>

After

Width:  |  Height:  |  Size: 302 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Actix</title><path d="M4.583 3.895c-.27.22-.788.078-1.164-.334-.156.156-.269.298-.411.454.411.334.596.866.376 1.114-.22.27-.752.22-1.163-.113-.114.156-.22.333-.334.489.454.298.674.752.518 1.057s-.674.334-1.163.078c-.079.192-.192.376-.27.518.489.22.752.596.631.944-.113.298-.596.411-1.085.269-.078.192-.114.376-.156.568.489.156.816.489.752.787-.078.334-.518.518-1.008.454-.028.192-.028.412-.078.596.49.078.866.334.866.674 0 .341-.412.568-.894.596v.596c.49 0 .894.22.944.518.028.298-.298.631-.788.709.028.192.078.412.114.596.489-.078.893.078.972.376.078.298-.192.674-.632.816.078.192.114.376.192.568.454-.156.894-.029 1.007.22.114.298-.078.674-.518.943.078.192.192.334.298.518.412-.22.866-.192 1.008.078.191.27 0 .674-.334.972.114.156.22.333.376.489.376-.269.816-.297 1.007-.078.22.22.114.674-.191 1.008.156.156.298.298.454.411.333-.333.752-.454 1.007-.269.249.191.22.631-.028 1.057.156.113.333.22.489.333.298-.376.674-.567.944-.411s.333.596.114 1.057c.191.113.376.191.517.269.22-.411.596-.674.894-.567.298.113.412.567.298 1.007.192.078.376.114.568.192.156-.454.489-.752.787-.71.298.078.49.49.454.972.192.029.412.078.596.078.078-.489.334-.865.674-.816.334 0 .568.412.596.944h.596c0-.49.22-.894.518-.944.333-.028.631.334.752.816.191-.028.411-.078.596-.113-.114-.49.078-.944.376-1.057.333-.078.709.22.865.752.192-.078.376-.114.568-.192-.192-.489-.114-.972.191-1.114.298-.142.752.156.972.632.192-.078.376-.192.518-.27-.269-.454-.269-.972 0-1.163.298-.192.788.028 1.086.489.156-.113.333-.22.489-.376-.376-.411-.454-.943-.191-1.163.269-.22.787-.078 1.163.333.156-.156.298-.298.412-.411-.455-.376-.596-.866-.412-1.114.22-.27.752-.22 1.192.156l.028.028c.114-.156.27-.333.376-.489-.489-.298-.752-.752-.596-1.086.192-.298.71-.333 1.192-.028l.029.028c.113-.191.191-.376.269-.567h-.028c-.518-.192-.866-.632-.752-.972.113-.348.674-.454 1.192-.22.028 0 .028.028.078.028.078-.191.156-.411.191-.596h-.078c-.567-.113-.972-.489-.894-.815.078-.334.596-.518 1.164-.412.028 0 .078 0 .113.029.029-.22.078-.412.114-.632h-.114c-.567-.028-1.007-.333-1.007-.674 0-.34.489-.631 1.057-.596H24v-.631h-.114c-.567.078-1.057-.192-1.085-.518-.028-.333.376-.674.972-.752h.156c-.028-.22-.078-.411-.113-.631-.029 0-.078.028-.157.028-.567.156-1.085 0-1.163-.333-.113-.334.27-.752.816-.894.028 0 .113-.029.156-.029-.078-.22-.156-.411-.22-.596-.028.029-.078.029-.156.078-.518.22-1.057.156-1.192-.156-.156-.333.156-.787.674-1.007.078-.028.114-.028.192-.078-.114-.192-.192-.376-.298-.568-.029.029-.078.078-.156.114-.49.298-1.008.333-1.242.028-.191-.298.028-.787.518-1.114.028-.028.113-.078.156-.078-.113-.191-.27-.333-.411-.517-.029.028-.078.078-.114.113-.411.376-.972.49-1.192.22s-.078-.787.334-1.163c.028-.029.113-.079.156-.114-.156-.156-.298-.298-.49-.454-.028.028-.078.078-.113.156-.376.454-.866.631-1.164.412-.269-.22-.22-.752.156-1.192.029-.029.078-.114.114-.156-.192-.114-.334-.27-.518-.376-.028.028-.028.113-.078.156-.298.489-.752.752-1.086.596-.298-.192-.333-.71-.028-1.192.028-.029.078-.114.114-.156-.192-.114-.376-.192-.596-.298 0 .028-.029.113-.029.156-.191.518-.631.865-.972.752-.347-.114-.454-.674-.22-1.192.029-.028.029-.114.078-.156-.191-.078-.411-.114-.631-.192 0 .029 0 .078-.028.156-.114.568-.49.972-.816.894-.334-.078-.518-.596-.412-1.163 0-.029.029-.114.029-.156-.22-.029-.412-.078-.632-.078v.113c-.028.568-.333 1.008-.674 1.008-.333 0-.631-.49-.595-1.057V.078h-.632v.114c.078.567-.191 1.057-.518 1.085-.333.028-.674-.376-.752-.972V.192c-.191.028-.411.078-.596.113 0 .028 0 .028.029.078.156.568 0 1.086-.334 1.164-.333.113-.752-.27-.894-.816V.653c-.191.078-.376.156-.596.22 0 0 0 .028.029.028.22.518.156 1.057-.156 1.192-.334.156-.788-.156-1.008-.674V1.39c-.191.114-.376.192-.518.298.298.49.334 1.008.029 1.242-.298.191-.788-.028-1.114-.518-.156.114-.333.27-.489.376.333.369.439.887.177 1.107m-.518 6.491c-.454-.156-.709-.631-.568-1.085.157-.454.632-.71 1.086-.568.454.156.709.631.567 1.086-.113.446-.631.709-1.085.567m.78 8.194c-2.17-2.391-3.114-5.725-1.837-6.889 1.241-1.113 4.044.49 6.257 2.881 2.171 2.39 3.554 5.313 2.277 6.477-1.269 1.135-4.526-.107-6.697-2.469m9.138 2.171c-.49.113-.944-.192-1.057-.674-.114-.49.191-.944.674-1.057.489-.114.943.191 1.057.674.085.511-.213.95-.674 1.057m6.073-12.798c1.603.518 2.17 3.93 1.191 7.002s-3.412 5.555-5.015 5.065c-1.604-.518-1.604-3.788-.632-6.86.965-3.036 2.852-5.746 4.456-5.207m-1.384-2.029c.334.376.298.894-.078 1.241-.376.348-.894.298-1.241-.078-.348-.376-.298-.894.078-1.241.376-.298.943-.256 1.241.078m-4.909 4.498c.894.971.816 2.468-.156 3.362s-2.469.816-3.363-.156-.816-2.469.156-3.363c.958-.901 2.469-.822 3.363.157M9.946 2.554c3.143-.674 6.513.191 6.889 1.837s-2.469 3.257-5.612 3.966c-3.143.674-6.399.412-6.746-1.241-.384-1.682 2.319-3.881 5.469-4.562"/></svg>

After

Width:  |  Height:  |  Size: 4.7 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Actual Budget</title><path d="m17.442 10.779.737 2.01-16.758 6.145a.253.253 0 0 1-.324-.15l-.563-1.536a.253.253 0 0 1 .15-.324zM1.13 23.309 12.036.145A.253.253 0 0 1 12.265 0h.478c.097 0 .185.055.227.142l7.036 14.455 2.206-.848c.13-.05.277.015.327.145l.587 1.526a.253.253 0 0 1-.145.327l-2.034.783 2.51 5.156a.253.253 0 0 1-.117.338l-1.47.716a.253.253 0 0 1-.339-.117l-2.59-5.322-17.37 6.682a.253.253 0 0 1-.328-.145c0-.001 0-.003-.002-.004l-.12-.33a.252.252 0 0 1 .009-.195zM12.528 4.127 4.854 20.425 18 15.369z"/></svg>

After

Width:  |  Height:  |  Size: 599 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Acura</title><path d="M23.77 10.908c-.23-4.018-1.492-6.89-3.33-8.496C18.489.689 14.814 0 12.057 0c-2.87 0-6.43.689-8.382 2.412C1.839 4.019.46 7.004.23 10.908c-.23 3.675.574 7.81 2.641 10.106C4.823 23.31 8.843 24 11.943 24s7.12-.689 9.072-2.986c2.18-2.296 2.986-6.316 2.755-10.106m-12.4-9.761h1.377v8.73H11.37ZM1.839 14.585c-.116-1.493-.575-6.89 1.607-9.99.919-1.38 2.182-2.297 3.56-2.757 1.838-.689 4.134-.689 4.134-.689-.919 2.181-2.641 6.89-2.985 7.924-.46 1.263-.804 1.952-1.15 4.248-.229 1.838-.688 6.546-.688 8.612-2.641-1.262-4.133-3.56-4.478-7.35m15.847 7.466c-1.723.803-3.905.918-5.628.918-1.722 0-3.903-.23-5.626-.918.574-1.607 3.33-8.269 4.823-10.91h1.608c1.493 2.643 4.248 9.417 4.823 10.91m4.592-7.466c-.344 3.79-1.837 6.088-4.363 7.35-.115-2.066-.459-6.774-.689-8.612-.345-2.296-.688-2.985-1.148-4.248-.345-1.034-2.182-5.742-2.986-7.924 0 0 2.181 0 4.134.69 1.378.458 2.642 1.377 3.56 2.756 1.952 3.1 1.607 8.497 1.493 9.99"/></svg>

After

Width:  |  Height:  |  Size: 1023 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Ada</title><path d="M18.869 13.45c0-.428.45-.585 1.18-.663.606-.068 1.09-.169 1.404-.371v.539c0 .644-.542.957-1.265 1.028a47.006 47 0 0 0-.925-.077c-.25-.095-.394-.256-.394-.457m-13.99.19h3.113l.256.755a33.004 33 0 0 0-3.96.97zM6.43 9.056l1.09 3.202H5.34zm6.921 1.606c.82 0 1.483.742 1.483 1.663 0 .651-.348 1.212-.852 1.473a47.006 47 0 0 0-1.152.053c-.562-.227-.961-.812-.961-1.526 0-.944.663-1.663 1.483-1.663m9.484 3.657v-3.072c0-.461-.18-1.978-2.529-1.978-1.516 0-2.572.82-2.718 1.921h1.483c.134-.494.741-.73 1.27-.73.662 0 1.055.247 1.055.55 0 .472-.685.585-1.651.675-1.28.112-2.37.449-2.37 1.752q0 .194.035.367a51.006 51 0 0 0-1.092-.028V6.844h-1.484v3.123a2.43 2.43 0 0 0-1.707-.674c-1.505 0-2.752 1.303-2.752 3.022a3.2 3.2 0 0 0 .474 1.702 38.005 38 0 0 0-1.12.14L7.376 7.406H5.498l-2.992 8.587A22.003 22 0 0 0 0 17.156c3.835-1.673 13.295-3.938 24-2.55-.051-.057-.466-.166-1.164-.286"/></svg>

After

Width:  |  Height:  |  Size: 978 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Adafruit</title><path d="M14.399 12.794c-.924.148-1.722-.037-1.781-.412-.06-.375.64-.798 1.565-.945.924-.147 1.721.038 1.78.412.06.374-.64.798-1.564.945m-.878 3.86c-.338.172-.957-.363-1.382-1.196-.426-.834-.497-1.65-.158-1.822.338-.172.956.363 1.382 1.196.425.833.497 1.65.158 1.822m-3.64-1.552c-.662.662-1.415.981-1.683.713-.27-.268.05-1.022.71-1.684.66-.663 1.414-.982 1.683-.714.269.268-.05 1.023-.71 1.685m-2.531-4.61c.171-.339.987-.268 1.82.156.834.424 1.372 1.042 1.2 1.38-.173.338-.988.269-1.822-.155-.834-.424-1.37-1.043-1.198-1.381m4.8-2.45c.375.058.56.856.414 1.78-.145.925-.566 1.625-.942 1.567-.374-.06-.56-.857-.415-1.78.145-.925.567-1.626.943-1.568m11.835 2.53c-.078-.491-.345-.632-.989-.837l-3.762-1.2s-2.283-.863-3.974.357c-.228.164-.464.351-.7.55.198-.236.385-.472.55-.7 1.215-1.694.349-3.975.349-3.975l-1.207-3.761c-.207-.643-.347-.91-.84-.986-.492-.078-.707.132-1.101.68l-2.305 3.209s-1.524 1.903-.888 3.89c.086.266.191.549.308.836a12.215 12.215 0 0 0-.497-.74C7.693 6.215 5.258 6.332 5.258 6.332S1.82 6.32 1.308 6.32c-.676-.003-.972.05-1.198.493-.226.443-.093.714.307 1.258.303.415 2.34 3.183 2.34 3.183S4.095 13.292 6.18 13.3c.28.001.58-.012.889-.034a12.317 12.317 0 0 0-.855.244c-1.98.656-2.619 3.01-2.619 3.01L2.36 20.273c-.21.64-.252.939.1 1.29.352.353.65.31 1.291.098.489-.16 3.75-1.242 3.75-1.242s2.352-.644 3.004-2.624c.088-.266.169-.556.243-.854a11.1 11.1 0 0 0-.03.887c.01 2.085 2.051 3.421 2.051 3.421l3.186 2.333c.546.398.816.531 1.26.305.443-.226.495-.523.491-1.199l-.022-3.95s.114-2.435-1.567-3.668a11.93 11.93 0 0 0-.739-.495c.287.115.568.22.836.304 1.986.633 3.888-.894 3.888-.894l3.204-2.31c.547-.395.756-.612.679-1.104"/></svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>AdAway</title><path d="M7.049 0 .014 7.016 0 16.951l7.016 7.035 9.935.014 7.035-7.015L24 7.049 16.984.014zm-1.87 6.52c.456-.046 2.886.98 5.768.99 1.48.091 2.039.52 2.455.956.932.878 1.135 1.324 2.315.755.48-.231 1.072-1.6 1.739-1.747.52-.076 1.283.58 1.474.77.21.205.399.396.598.487-.684.037-1.632 1.634-1.657 2.99.137 3.791-1.57 3.582-3.248 5.437-.535.51-.836 1.578-.836 2.553l-.705-.021c-.418.01-.895-.535-1.126-.899-.44-.735-.897.673-1.583-.48.031-.383-1.833-.457-.762-1.348 2.53-1.79 3.764-2.168 3.711-2.708-.062-.638-1.545-.06-2.884-.122-2.213-.102-1.97-1.504-2.166-2.157-1.857-1.034 1.428-1.52-.015-1.826-.705-.111-1.949.15-2.21-1.069.235.291 3.32-.304 2.077-.498-1.725-.783-2.21-.364-2.926-1.835-.124-.15-.124-.218-.019-.228Zm12.575 1.903a.261.261 0 0 0-.26.26.261.261 0 0 0 .26.262.261.261 0 0 0 .261-.261.261.261 0 0 0-.26-.261z"/></svg>

After

Width:  |  Height:  |  Size: 924 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>AdBlock</title><path d="M7.775 0a1.8 1.8 0 0 0-1.273.527L.528 6.503A1.8 1.8 0 0 0 0 7.775v8.45c0 .478.19.936.528 1.274l5.974 5.974A1.8 1.8 0 0 0 7.775 24h8.45a1.8 1.8 0 0 0 1.273-.527l5.975-5.974A1.8 1.8 0 0 0 24 16.225v-8.45a1.8 1.8 0 0 0-.527-1.272L17.498.527A1.8 1.8 0 0 0 16.225 0zm4.427 3c1.02 0 .958 1.108.958 1.108v6.784s-.009.218.16.218c.188 0 .175-.226.175-.226l-.002-5.63s-.05-.986.959-.986c1.01 0 .97.983.97.983v7.621s.014.158.141.158c.127 0 .944-2.122.944-2.122s.451-1.497 2.576-1.1c.038.008-.167.688-.167.688l-2.283 6.556S15.69 20.7 11.714 20.7c-5.044 0-4.808-5.407-4.814-5.405V7.562s-.016-.99.897-.99c.858 0 .849.99.849.99l.007 3.583s-.004.172.167.172c.16 0 .141-.172.141-.172l.01-5.926s-.055-1.162.966-1.162c1.04 0 .983 1.142.983 1.142v5.611s-.005.204.152.204c.168 0 .154-.206.154-.206l.01-6.693S11.18 3 12.202 3Z"/></svg>

After

Width:  |  Height:  |  Size: 915 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Adblock Plus</title><path d="M7.027 0L0 7.027v9.941L7.027 24h9.941L24 16.968v-9.94L16.973 0zm.202.48h9.542l6.749 6.749v9.542l-6.749 6.749H7.23L.48 16.771V7.23zm.557 1.344L1.824 7.786v8.428l5.962 5.962h8.428l5.962-5.962V7.786l-5.962-5.962zM4.396 7.68H6.38l2.285 8.41H6.917l-.447-2.002H4.238l-.446 1.997h-1.68zm5.3 0h2.491c.355-.005.71.029 1.061.096.302.058.595.173.85.34.24.164.436.385.57.644.14.269.207.605.207 1.008 0 .192-.024.384-.072.566-.048.188-.12.365-.216.528-.1.168-.23.317-.379.437-.163.13-.35.226-.547.283v.053c.523.11.917.327 1.18.643.265.317.399.759.399 1.33 0 .432-.072.802-.216 1.109-.14.302-.346.561-.605.768-.269.206-.576.36-.902.451-.36.1-.735.154-1.109.149H9.696zm6.667 0h2.669c.374-.005.749.043 1.114.134.33.082.643.236.907.452.269.225.48.513.61.84.148.345.225.772.225 1.281 0 .49-.077.917-.23 1.277-.14.34-.35.643-.624.888a2.553 2.553 0 0 1-.908.518 3.551 3.551 0 0 1-1.099.168H18.01v2.852h-1.647zM5.328 9.125c-.091.446-.182.907-.274 1.373-.09.465-.192.912-.297 1.334l-.178.773h1.555l-.168-.773a31.5 31.5 0 0 1-.302-1.34 55.623 55.623 0 0 0-.293-1.367zm6.005.029v1.92h.773c.403 0 .696-.092.878-.279.182-.187.274-.437.274-.753 0-.317-.092-.548-.279-.682-.187-.134-.475-.206-.864-.206zm6.681.038v2.54h.917c.898 0 1.344-.447 1.344-1.34 0-.437-.115-.749-.34-.931-.226-.183-.562-.269-1.004-.269zm-6.681 3.22v2.204h.931c.902 0 1.354-.384 1.354-1.147 0-.37-.11-.639-.336-.807-.226-.168-.562-.25-1.018-.25z"/></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>addy.io</title><path d="M18 6.81V6c0-.305-.033-.605-.075-.9C17.489 2.217 15 0 12 0S6.51 2.217 6.075 5.1A5.733 5.733 0 0 0 6 6v.81A5.987 5.987 0 0 0 3 12v6a6 6 0 0 0 6 6h6c0-1.655-1.345-3-3-3H9c-1.655 0-3-1.345-3-3v-6c0-1.655 1.345-3 3-3h6c1.655 0 3 1.345 3 3v1.5a3 3 0 0 1-1.5 2.597V12c0-.83-.67-1.5-1.5-1.5H9c-.83 0-1.5.67-1.5 1.5v6c0 .83.67 1.5 1.5 1.5h6c1.055 0 2.04-.272 2.902-.75A5.996 5.996 0 0 0 21 13.5V12a5.987 5.987 0 0 0-3-5.19Zm-4.5 9.69h-3v-3h3zM9 6c0-.548.15-1.06.408-1.5A2.998 2.998 0 0 1 12 3c1.106 0 2.077.605 2.592 1.5.258.44.408.952.408 1.5Z"/></svg>

After

Width:  |  Height:  |  Size: 647 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>AdGuard</title><path d="M12 0C8.249 0 3.725.861 0 2.755 0 6.845-.051 17.037 12 24 24.051 17.037 24 6.845 24 2.755 20.275.861 15.751 0 12 0zm-.106 15.429L6.857 9.612c.331-.239 1.75-1.143 2.794.042l2.187 2.588c.009-.001 5.801-5.948 5.815-5.938.246-.22.694-.503 1.204-.101l-6.963 9.226z"/></svg>

After

Width:  |  Height:  |  Size: 370 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Adidas</title><path d="m24 19.535-8.697-15.07-4.659 2.687 7.145 12.383Zm-8.287 0L9.969 9.59 5.31 12.277l4.192 7.258ZM4.658 14.723l2.776 4.812H1.223L0 17.41Z"/></svg>

After

Width:  |  Height:  |  Size: 243 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Adminer</title><path d="M22.521 8.297a.53.53 0 0 1-.53.53.53.53 0 0 1-.531-.53.53.53 0 0 1 .53-.53.53.53 0 0 1 .531.53zm-1.085-6.122c-.264-.008-.438.01-.438.01l.076.836s.577-.045 1.12.107c.272.076.521.198.689.369.167.17.277.382.277.758 0 .196-.052.296-.139.39a.964.964 0 0 1-.378.232c-.312.113-.65.116-.65.116l-.422-.002v2.174h.84V5.758c.177-.017.25.004.517-.092.241-.087.502-.223.714-.455A1.42 1.42 0 0 0 24 4.255c0-.565-.208-1.03-.518-1.346-.31-.316-.697-.488-1.061-.59a4.193 4.193 0 0 0-.985-.144ZM17.892 3.79l-2.874 2.487 2.886 2.451.544-.64-2.14-1.817 2.133-1.846zM6.587 5.108c-1.734 0-3.302.186-4.47.5-.584.157-1.068.343-1.438.579-.37.235-.679.56-.679 1V19.747c0 .287.145.54.337.73.191.191.437.343.732.48.59.275 1.39.49 2.37.641 1.96.305 4.335.305 6.295 0 .98-.152 1.78-.366 2.37-.64.296-.138.54-.29.732-.48.191-.19.337-.444.337-.731V7.187c0-.44-.309-.765-.68-1-.37-.236-.853-.422-1.437-.579-1.167-.314-2.736-.5-4.47-.5Zm0 .84c1.672 0 3.187.185 4.25.471.533.143.953.315 1.207.476.253.161.29.274.29.292 0 .018-.037.13-.29.29-.254.162-.674.334-1.206.477-1.064.287-2.579.472-4.251.472-1.673 0-3.188-.185-4.252-.472-.532-.143-.952-.315-1.205-.476-.254-.162-.29-.273-.29-.291 0-.018.036-.13.29-.292.253-.161.673-.333 1.205-.476 1.064-.286 2.58-.471 4.252-.471ZM.839 8.25c.352.2.76.374 1.278.514 1.168.314 2.736.5 4.47.5 1.733 0 3.302-.186 4.47-.5.518-.14.925-.315 1.276-.514v3.123c0 .01 0 .047-.09.135a1.835 1.835 0 0 1-.493.313c-.475.221-1.217.429-2.145.573-1.856.288-4.181.288-6.038 0-.928-.144-1.67-.352-2.144-.573a1.829 1.829 0 0 1-.494-.313c-.088-.088-.09-.126-.09-.135Zm0 4.182c.083.047.137.107.23.15.59.276 1.39.49 2.37.642 1.96.304 4.335.304 6.295 0 .98-.152 1.78-.366 2.37-.642.093-.043.147-.103.23-.15v3.127c0 .01-.002.047-.09.135a1.834 1.834 0 0 1-.494.314c-.475.221-1.217.429-2.145.573-1.856.288-4.181.288-6.038 0-.928-.144-1.67-.352-2.144-.573a1.828 1.828 0 0 1-.494-.314c-.088-.088-.09-.126-.09-.135zm0 4.187c.083.047.137.107.23.15.59.275 1.39.49 2.37.642 1.96.304 4.335.304 6.295 0 .98-.153 1.78-.367 2.37-.642.093-.043.147-.103.23-.15v3.127c0 .01-.002.047-.09.135a1.834 1.834 0 0 1-.494.314c-.475.221-1.217.429-2.145.573-1.856.288-4.181.288-6.038 0-.928-.144-1.67-.352-2.144-.573a1.828 1.828 0 0 1-.494-.314c-.088-.088-.09-.126-.09-.135Z"/></svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>AdonisJS</title><path d="M0 12c0 9.68 2.32 12 12 12s12-2.32 12-12S21.68 0 12 0 0 2.32 0 12Zm4.84 2.492 3.762-8.555C9.238 4.498 10.46 3.716 12 3.716c1.54 0 2.762.781 3.398 2.223l3.762 8.554c.172.418.32.953.32 1.418 0 2.125-1.492 3.617-3.617 3.617-.726 0-1.3-.183-1.883-.37-.597-.192-1.203-.387-1.98-.387-.77 0-1.39.195-1.996.386-.59.188-1.168.371-1.867.371-2.125 0-3.617-1.492-3.617-3.617 0-.465.148-1 .32-1.418ZM12 7.43l-3.715 8.406c1.102-.512 2.371-.758 3.715-.758 1.297 0 2.613.246 3.664.758Z"/></svg>

After

Width:  |  Height:  |  Size: 581 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>ADP</title><path d="M15.08584 11.9999a3.13031 3.13031 0 0 1-3.12003 3.12002h-1.2v-1.37144h1.2a1.74859 1.74859 0 1 0 0-3.49717h-1.2V8.87987h1.2a3.13031 3.13031 0 0 1 3.12003 3.12002M8.43436 8.87987v2.53716H6.27434l-.78858 1.37144H9.8058v-3.9086Zm15.56584 1.9543a4.28575 4.28575 0 0 1-4.28575 4.28575v2.33145h-3.70289V15.6342a5.36233 5.36233 0 0 1-4.08003 1.81716H8.43436v-2.33145H5.69148l-1.37144 2.33145H0L6.34291 6.54842h5.6229a5.59548 5.59548 0 0 1 4.08004 1.81716V6.54842h3.70289a4.2789 4.2789 0 0 1 4.25146 4.28575m-12.03439 5.24576a4.09032 4.09032 0 0 0 3.7029-2.33145h1.74858v2.33145h.96v-2.33145h1.37145a2.91088 2.91088 0 0 0 2.9143-2.91431 2.94174 2.94174 0 0 0-2.94859-2.91431H17.383v3.49717h-1.37144a4.11432 4.11432 0 0 0-4.04575-3.49717H7.16577l-4.76575 8.16007h1.13144l1.37144-2.33145h4.9029v2.33145zm7.74864-7.20006h-1.37144v1.37144h1.37144a.57943.57943 0 0 1 .58286.58286.6.6 0 0 1-.58286.58286h-1.37144v1.37144h1.37144a1.9543 1.9543 0 0 0 1.9543-1.9543 1.97487 1.97487 0 0 0-1.9543-1.9543 M21.63447 16.76565a.54858.54858 0 1 1-.54858-.54858.54172.54172 0 0 1 .54858.54858m.13714 0a.68572.68572 0 1 0-.68572.68572.68572.68572 0 0 0 .68572-.68572 M21.12018 16.45707a.13714.13714 0 1 1 0 .2743h-.13715v-.2743zm.17143-.03428a.26057.26057 0 0 0-.17143-.06857h-.2743v.82286h.10287v-.30857h.13714l.17143.30857h.13714l-.20571-.34286c.03428 0 .06857-.03429.10286-.06857a.20572.20572 0 0 0 .03428-.13715.192.192 0 0 0-.03428-.20571"/></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Adroll</title><path d="M24 12c0-6.01-4.727-10.886-10.886-10.886a10.863 10.863 0 0 0-9.508 5.578L8.914 12c0-2.323 1.958-4.2 4.2-4.2 2.377 0 4.2 1.877 4.2 4.2s-1.836 4.2-4.2 4.2H4.065A4.07 4.07 0 0 0 0 20.266v2.62h13.114C19.232 22.886 24 18.01 24 12"/></svg>

After

Width:  |  Height:  |  Size: 334 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Advent Of Code</title><path d="m14.05 13.236 6.498 9.606L18.91 24l-6.905-9.47L5.1 24l-1.637-1.158 6.498-9.606L.553 9.22l.615-1.69 9.596 3.463L11.087 0h1.826l.323 10.993 9.596-3.462.615 1.69-9.387 4.015z"/></svg>

After

Width:  |  Height:  |  Size: 289 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Adyen</title><path d="M11.64703 9.88245v2.93377c0 .13405.10867.24271.24272.24271h.46316V9.88245h1.76474v5.1503c0 .46916-.38033.8495-.8495.8495H9.94303v-1.23507h2.40991v-.52942h-1.62108c-.46917 0-.8495-.38033-.8495-.8495V9.88245h1.76467Zm-8.26124.00001c.46917 0 .8495.38034.8495.8495v3.3858H.8495c-.46916 0-.8495-.38033-.8495-.8495v-.94805c0-.46917.38034-.8495.8495-.8495h.91521v1.3455c0 .13406.10867.24272.24272.24272h.46316V11.184c0-.13405-.10867-.24271-.24272-.24271l-2.16719-.00002V9.88246Zm5.79068-1.76471v6.00001H5.79068c-.46917 0-.8495-.38033-.8495-.8495v-2.53631c0-.46917.38033-.8495.8495-.8495h.91515v2.93377c0 .13405.10867.24271.24272.24271h.46316l.00005-4.94118h1.76471Zm9.03286 1.76471a.8495.8495 0 0 1 .8495.8495v.94805c0 .46917-.38033.8495-.8495.8495h-.9152v-1.3455c0-.13404-.10868-.2427-.24272-.2427h-.46317v1.8749c0 .13406.10867.24272.24272.24272h2.16719v1.05883h-3.32511c-.46917 0-.8495-.38033-.8495-.8495v-3.3858Zm4.94117 0c.46916 0 .8495.38034.8495.8495v3.3858h-1.7647V11.184c-.0004-.13388-.10884-.24232-.24272-.24272h-.46316v3.1765H19.7647V9.88245Z"/></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Aegis Authenticator</title><path d="m6.9487 19.8732-.0074.0133a1.483 1.483 0 0 0-.0013 1.469l.3165.5565c.2639.4638.7563.75 1.2897.75h.0163c1.139 0 1.853-1.2301 1.2883-2.219l-.325-.5697c-.5693-.9974-2.0074-.9974-2.577-.0002m3.4905-6.1074a1.483 1.483 0 0 0-.0013 1.4688l3.7964 6.6769c.2639.4638.756.7503 1.2897.7503h.0156c1.139 0 1.853-1.2301 1.2883-2.219l-3.8118-6.677c-.5693-.9974-2.0077-.9974-2.5768 0m.3275-11.692L.1972 20.4648c-.5618.9775.1438 2.1969 1.2713 2.1969a1.467 1.467 0 0 0 1.2734-.7393l7.9513-13.9285c.5632-.9867 1.9861-.9855 2.548.0026l7.9175 13.9239a1.466 1.466 0 0 0 1.2746.7416h.0982c1.1255 0 1.8313-1.2152 1.2736-2.193L13.3116 2.0776c-.5616-.9844-1.98-.9867-2.5448-.0039"/></svg>

After

Width:  |  Height:  |  Size: 775 B

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Aer Lingus</title><path d="M23.857 13.511c-.48 1.545-2.081 2.995-4.002 3.296.31.48.452 1.074.377 1.733-.208 1.789-1.921 3.23-3.758 3.249-1.243.009-2.928-.528-4.115-2.402-1.064-1.666-1.215-4.313-1.14-5.113-1.299 1.328-2.109 2.618-2.495 3.512-.866 2.025-1.196 4.492-1.177 5.65 0 0-.16.151-.31.18-.48-.085-.895-.264-1.206-.537-.376-.34-.461-.66-.461-.66.574-2.872 1.488-4.66 2.853-6.704 1.836-2.76 4.67-4.464 8.032-5.49 2.43-.744 4.954-.904 6.686.565.933.772.989 1.883.716 2.721zM9.544 11.986c-.575.96-2.147 2.505-3.39 3.305-2.59 1.657-4.454 1.77-5.387 1.177a1.451 1.451 0 0 1-.292-.235c-.725-.763-.602-2.119.245-3.23.415-.546.951-.932 1.47-1.111-.406-.189-.679-.584-.735-1.14-.113-1.11.725-2.57 1.883-3.164 1.017-.518 3.211-1.036 4.821 1.366.631.932 1.196 2.26 1.385 3.032zM20.184 1.89c-.14-1.384-1.62-1.893-3.248-1.196-.772.33-1.45.885-1.93 1.516.075-.63-.104-1.186-.556-1.516-.895-.65-2.524-.17-3.635 1.036-.386.424-1.648 1.95-1.714 4.19-.028 1.083.452 3.485 2.034 5.142 4.219-1.591 6.488-4.03 7.354-5.038.999-1.168 1.422-2.194 1.601-2.947.132-.594.113-1.017.094-1.187z"/></svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Aeroflot</title><path d="M9.066 12.725c-.056-.135-.097-.272-.143-.406l-6.675.406 1.35.693zm.909 1.247c-.057-.042-.115-.1-.17-.15a1.822 1.822 0 0 1-.287-.318l-3.333.67 1.419.509zm2.64-.286c.16-.025.4-.122.588-.268l-.968-2.032 1.005-.51-.848-.782c-.602.292-1.206.58-1.809.868l.43 1.025.694-.33zm1.65-4.241c.387.5.655 1.081.782 1.7h-.61a3.884 3.884 0 0 0-.172-.57c-.41-1.142-1.25-1.956-2.216-2.633-.127-.078-.241-.164-.37-.238.129.044.243.086.37.136.88.372 1.662.885 2.216 1.605m.185 6.517c-.225.114-.455.22-.682.33l-.565-1.193c-.37.139-.76.215-1.154.226-.424.02-.847-.04-1.249-.176l-.483 1.143c-.157.014-.374 0-.512-.106a.378.378 0 0 1-.169-.224c.204-.356.389-.723.579-1.087-.127-.088-.24-.152-.355-.27l.344-.437c.582.38 1.22.585 1.845.585.627.022 1.25-.192 1.832-.628.19.055.385.119.541.18-.058.046-.1.087-.157.136-.114.12-.213.242-.398.346.188.395.387.784.583 1.175zm7.785-3.431L24 11.343h-9.55c0 .422-.06.784-.185 1.1-.369 1.005-1.291 1.487-2.216 1.469-.908-.027-1.834-.524-2.244-1.441a2.745 2.745 0 0 1-.229-1.128H0l1.75 1.188 7.316-.404c.138.553.397 1.037.74 1.395a3.065 3.065 0 0 0 2.243 1.01 2.79 2.79 0 0 0 2.216-.992c.312-.362.554-.826.694-1.385zm-.48.194l-1.352.663L15 12.725a9.5 9.5 0 0 0 .129-.406zm-3.907 1.462l-1.48.52a357.77 357.77 0 0 1-2.286-.735c.069-.06.125-.117.183-.196.085-.074.157-.176.242-.254zm.711-.09l1.177-.575-4.86-.614c-.043.164-.171.298-.256.432zm-13.116 0l-1.179-.542 4.885-.635c.09.152.171.286.27.42Z"/></svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

Some files were not shown because too many files have changed in this diff Show More