---
# Please note: This repository is being rebuilt to accept the new volume of token additions and modifications. PR merges will be delayed.
---

# @uttacoin/upl-token-registry

[![npm](https://img.shields.io/npm/v/@uttacoin/upl-token-registry)](https://unpkg.com/@uttacoin/upl-token-registry@latest/) ![GitHub license](https://img.shields.io/badge/license-APACHE-blue.svg)

UTTA Coin Token Registry is a package that allows application to query for list of tokens.
The JSON schema for the tokens includes: chainId, address, name, decimals, symbol, logoURI (optional), tags (optional), and custom extensions metadata.

Based on package @uttacoin/upl-token-registry [https://github.com/solana-labs/token-list](https://github.com/solana-labs/token-list)

Forked 23.11.2021 (version 0.2.402)


## Installation

```bash
npm install @uttacoin/upl-token-registry
```

```bash
yarn add @uttacoin/upl-token-registry
```

## Examples

### Query available tokens

```typescript
new TokenListProvider().resolve().then((tokens) => {
  const tokenList = tokens.filterByClusterSlug('mainnet').getList();
  console.log(tokenList);
});
```

### Render icon for token in React

```typescript jsx
import React, { useEffect, useState } from 'react';
import { TokenListProvider, TokenInfo } from '@uttacoin/upl-token-registry';


export const Icon = (props: { mint: string }) => {
  const [tokenMap, setTokenMap] = useState<Map<string, TokenInfo>>(new Map());

  useEffect(() => {
    new TokenListProvider().resolve().then(tokens => {
      const tokenList = tokens.filterByChainId(ENV.MainnetBeta).getList();

      setTokenMap(tokenList.reduce((map, item) => {
        map.set(item.address, item);
        return map;
      },new Map()));
    });
  }, [setTokenMap]);

  const token = tokenMap.get(props.mint);
  if (!token || !token.logoURI) return null;

  return (<img src={token.logoURI} />);

```

## Adding new token

Submit PR with changes to JSON file `src/tokens/solana.tokenlist.json`

Please follow the Uniswap Token List specification found here: https://github.com/Uniswap/token-lists
