base64-cryptocurrency-icons
v1.1.20
Published
A collection of base64-encoded cryptocurrency icons
Downloads
357
Readme
base64-cryptocurrency-icons
A collection of base64-encoded cryptocurrency icons
Introduction
This module just provides a base64-encoded version of the icons provided by coingecko, updated weekly by a CI job and packaged into js to improve usability and speed (there's no need to read files from disk after the initial loading).
Currently the package present on npm only includes the first 4500 cryptocurrencies (ordered by marketcap) to keep package size low, but if you'd like to have access to the 7,000+ cryptocurrencies on coingecko just change the constants on build.ts
.
The package also includes a generic icon that can be accessed as GENERIC
.
Usage
const icons = require('base64-cryptocurrency-icons');
console.log(icons["BTC"]);
{
"name": "Bitcoin",
"icon": "data:image/png;base64,iVBORw0KGgoAAAANSUhE..."
}
Features
- Native Typescript types
- Tracks coingecko icons through a weekly CI job
- Automatic npm package publication that keeps it always up to date
- Zero dependencies
- Compatible with all versions of node since 0.12 (released in february 2015)
Development
# Setup
npm install
# Generate files
npm run generate
# Run tests
npm test
This may take a while, as coingecko's API is rate-limited and the build script throttles itself to stay under the limit.
License
- All cryptocurrency data and icons come from coingecko, which provides their data "for free, and as-is without any warranty." (Source) under these Terms of Service, that allow anyone "to charge for your services and products that incorporate or integrates our CoinGecko API". Furthermore, I've directly messaged coingecko about the re-distribution of data in this package and they have given permission to do so.
- The generic icon comes from the repository spothq/cryptocurrency-icons and is licensed under the Creative Commons Zero (CC0) license.
Acknoledgements
Huge thanks to coingecko for leaving their API open and acessible by everyone.