Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/lukechilds/coinlist
Comprehensive list of cryptocurrencies with metadata
https://github.com/lukechilds/coinlist
array crypto cryptocoins cryptocurrency crytocurrencies list
Last synced: 6 days ago
JSON representation
Comprehensive list of cryptocurrencies with metadata
- Host: GitHub
- URL: https://github.com/lukechilds/coinlist
- Owner: lukechilds
- License: mit
- Created: 2018-03-20T05:24:02.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2022-07-27T22:45:11.000Z (over 2 years ago)
- Last Synced: 2024-05-01T23:18:30.390Z (7 months ago)
- Topics: array, crypto, cryptocoins, cryptocurrency, crytocurrencies, list
- Language: JavaScript
- Homepage:
- Size: 179 KB
- Stars: 155
- Watchers: 3
- Forks: 19
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# coinlist
> Comprehensive list of cryptocurrencies with metadata
[![Build Status](https://travis-ci.org/lukechilds/coinlist.svg?branch=master)](https://travis-ci.org/lukechilds/coinlist)
[![Coverage Status](https://coveralls.io/repos/github/lukechilds/coinlist/badge.svg?branch=master)](https://coveralls.io/github/lukechilds/coinlist?branch=master)
[![npm](https://img.shields.io/npm/v/coinlist.svg)](https://www.npmjs.com/package/coinlist)
[![tippin.me](https://badgen.net/badge/%E2%9A%A1%EF%B8%8Ftippin.me/@lukechilds/F0918E)](https://tippin.me/@lukechilds)List compiled from the [coingecko.com API](https://www.coingecko.com/api/docs/v3). Importable as a raw JSON file or an array with helper methods.
## Install
```shell
yarn add coinlist
```## Usage
```js
const coins = require('coinlist');// coins is an array of coin objects:
[
{
id: 'bitcoin',
symbol: 'BTC',
name: 'Bitcoin'
},
{
id: 'litecoin',
symbol: 'LTC',
name: 'Litecoin'
},
...
]// There is a useful helper method to search the array for a ticker symbol:
const btc = coins.get('BTC');
{
id: 1,
symbol: 'BTC',
name: 'Bitcoin'
}// Or get a specific property
coins.get('BTC', 'name');
// "Bitcoin"// You can still use all the usual array methods on coins:
coins.map(coin => coin.name);
[
'BTC',
'LTC',
...
]// Alternatively, you can load the raw JSON file:
const coinsJson = require('coinlist/src/coins.json');
```## API
### coins
An array of coin objects.
### coins.get(symbol, [property])
Returns a coin object.
Alternatively returns a coin property if the `property` argument is defined.
If the symbol cannot be found it will return `undefined`.
#### symbol
Type: `string`
The coin ticker symbol to search the array for.
#### property
Type: `string`
A single coin property to return instead of the entire coin object.
Valid properties are:
- `id` The CoinGecko API id.
- `symbol` The ticker symbol.
- `name` The readable name.## Update Coins
```
$ yarn update
Fetching latest currencies from the coingecko.com API...
Written 2306 coins to src/coins.json
```## Contributing
Pull requests are welcome to improve the code but please don't add currencies to `coins.json` directly. The JSON is automatically generated from the update script.
## License
MIT © Luke Childs