466b58f6fe
Co-authored-by: Renovate Bot <bot@renovateapp.com> |
||
---|---|---|
_data | ||
.github | ||
icons | ||
scripts | ||
tests | ||
.dockerignore | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
.jsonschema.json | ||
.npmignore | ||
.npmrc | ||
.svglint-ignored.json | ||
.svglintrc.js | ||
composer.json | ||
CONTRIBUTING.md | ||
DISCLAIMER.md | ||
Dockerfile | ||
jest.config.js | ||
LICENSE.md | ||
package.json | ||
README.md | ||
slugs.md | ||
svgo.config.js |
Simple Icons
Over 1500 Free SVG icons for popular brands. See them all on one page at SimpleIcons.org. Contributions, corrections & requests can be made on GitHub.
Usage
ℹ️ We ask that all users read our legal disclaimer before using icons from Simple Icons.
General Usage
Icons can be downloaded as SVGs directly from our website - simply click the icon you want, and the download should start automatically.
CDN Usage
Icons can be served from a CDN such as JSDelivr or Unpkg. Simply use the simple-icons
npm package and specify a version in the URL like the following:
<img height="32" width="32" src="https://cdn.jsdelivr.net/npm/simple-icons@v5/icons/[ICON SLUG].svg" />
<img height="32" width="32" src="https://unpkg.com/simple-icons@v5/icons/[ICON SLUG].svg" />
Where [ICON SLUG]
is replaced by the slug of the icon you want to use, for example:
<img height="32" width="32" src="https://cdn.jsdelivr.net/npm/simple-icons@v5/icons/simpleicons.svg" />
<img height="32" width="32" src="https://unpkg.com/simple-icons@v5/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.
Node Usage
The icons are also available through our npm package. To install, simply run:
npm install simple-icons
The API can then be used as follows, where [ICON SLUG]
is replaced by a slug:
const simpleIcons = require('simple-icons');
// Get a specific icon by its slug as:
// simpleIcons.Get('[ICON SLUG]');
// For example:
const icon = simpleIcons.Get('simpleicons');
Alternatively you can import the needed icons individually, where [ICON SLUG]
is replaced by a slug.
This is useful if you are e.g. compiling your code with webpack and therefore have to be mindful of your package size:
// Import a specific icon by its slug as:
// require('simple-icons/icons/[ICON SLUG]');
// For example:
const icon = require('simple-icons/icons/simpleicons');
Either method will return an icon object:
console.log(icon);
/*
{
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.
*/
Lastly, the simpleIcons
object is also enumerable.
This is useful if you want to do a computation on every icon:
const simpleIcons = require('simple-icons');
for (const iconSlug in simpleIcons) {
const icon = simpleIcons.Get(iconSlug);
// do stuff
}
TypeScript Usage
There are also TypeScript type definitions for the Node package. To use them, simply run:
npm install --save-dev @types/simple-icons
PHP Usage
The icons are also available through our Packagist package. To install, simply run:
composer require simple-icons/simple-icons
The package can then be used as follows, where [ICON SLUG]
is replaced by a slug:
<?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>
?>