mirror of
https://github.com/Mibew/simple-icons.git
synced 2025-04-14 08:39:33 +03:00
Merge pull request #537 from birjolaxew/feature/npm
Prepare for NPM publishing
This commit is contained in:
commit
fea7c9f4ac
@ -5,4 +5,5 @@
|
|||||||
!icons/
|
!icons/
|
||||||
!package.json
|
!package.json
|
||||||
!README.md
|
!README.md
|
||||||
!LICENSE.md
|
!LICENSE.md
|
||||||
|
!index.js
|
||||||
|
32
README.md
32
README.md
@ -1,8 +1,32 @@
|
|||||||
# Simple Icons
|
# Simple Icons
|
||||||
|
|
||||||
Free SVG icons for popular brands, started by [Dan Leech](https://twitter.com/bathtype). [See them all on one page at **simpleicons.org**](https://simpleicons.org). Contributions, corrections & requests can be made on GitHub.
|
Free SVG icons for popular brands, started by [Dan Leech](https://twitter.com/bathtype). [See them all on one page at **simpleicons.org**](https://simpleicons.org). Contributions, corrections & requests can be made on GitHub.
|
||||||
|
|
||||||
## To do
|
## Usage
|
||||||
|
|
||||||
- [ ] Analytics tracking for icon clicks
|
Icons can be downloaded as SVGs directly from [our website](https://simpleicons.org/) - simply click the icon you want, and the download should start automatically.
|
||||||
- [ ] New README.md
|
|
||||||
|
### 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:
|
||||||
|
|
||||||
|
```javascript
|
||||||
|
const simpleIcons = require('simple-icons');
|
||||||
|
|
||||||
|
console.log(simpleIcons['Google+']);
|
||||||
|
|
||||||
|
/*
|
||||||
|
{
|
||||||
|
title: 'Google+',
|
||||||
|
hex: 'DC4E41',
|
||||||
|
source: 'https://developers.google.com/+/branding-guidelines',
|
||||||
|
svg: '<svg aria-labelledby="simpleicons-googleplus-icon" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">...</svg>'
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
```
|
||||||
|
11
example.js
11
example.js
@ -1,11 +0,0 @@
|
|||||||
const SimpleIcons = require('./');
|
|
||||||
|
|
||||||
console.log(SimpleIcons['500px'].svg);
|
|
||||||
|
|
||||||
/*
|
|
||||||
{ title: '500px',
|
|
||||||
hex: '0099E5',
|
|
||||||
source: 'https://about.500px.com/press',
|
|
||||||
name: '500px',
|
|
||||||
svg: '<svg aria-labelledby="simpleicons-500px-icon" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">...</svg>' }
|
|
||||||
*/
|
|
12
index.js
12
index.js
@ -2,12 +2,14 @@ const dataFile = './_data/simple-icons.json';
|
|||||||
const data = require(dataFile);
|
const data = require(dataFile);
|
||||||
const fs = require('fs');
|
const fs = require('fs');
|
||||||
|
|
||||||
let Icons = {};
|
const icons = {};
|
||||||
|
|
||||||
data.icons.forEach(i => {
|
data.icons.forEach(i => {
|
||||||
i.name = i.title.toLowerCase().replace(/[^a-z0-9]/gim, '');
|
const filename = i.title.toLowerCase()
|
||||||
i.svg = fs.readFileSync(`./icons/${i.name}.svg`, 'utf8');
|
.replace(/\+/g, "plus")
|
||||||
Icons[i.name] = i
|
.replace(/[ .\-!’]/g, '');
|
||||||
|
i.svg = fs.readFileSync(`./icons/${filename}.svg`, 'utf8');
|
||||||
|
icons[i.title] = i
|
||||||
});
|
});
|
||||||
|
|
||||||
module.exports = Icons;
|
module.exports = icons;
|
||||||
|
Loading…
Reference in New Issue
Block a user