Giter VIP home page Giter VIP logo

tokenassets's Introduction

Token Assets

The goal of this project is to unify the cryptocurrency token assets under one CDN with pragmatic access.

The CDN supports SVG and PNGs (small, larger).

Usage

Currently the API/CDN endpoint is at:

https://assets.smold.app/api/token/[chainID]/[tokenAddress]/[fileName].[ext]

Usage

It's recommanded to use PNG files. They are smaller and faster to load, come in two sizes (32x32 and 128x128) and are supported by all browsers. SVG files are also available, but they are larger and slower to load and can hurt performances for poorly optimized assets or very complex ones (ex: curvefi icon).

(Self) Hosting

The repo comes with two different server systems in _config:

  • a golang server, that serve the assets from github
  • a node server, configured to work with Vercel. If you want to self host, here is the config we are using:
Framework Preset: Next.js
Build Command: yarn --cwd _config/nodeAPI/ run build
Output Directory: _config/nodeAPI/.next
Install Command: yarn install && yarn --cwd _config/nodeAPI/ install
Development Command: next
Node Version: 18.x
Environment Variables: None

Contributing

You will need an SVG file of the logo of the asset. You can use Inkscape or a web tool like https://cloudconvert.com/svg-to-png to convert the SVG file into the PNGs.

With Inkscape you can run:

$ inkscape -w 128 -h 128 logo.svg -e logo-18.png
$ inkscape -w 32 -h 32 logo.svg -e logo-32.png

You can also use rsvg-convert from the librsvg2 package:

$ rsvg-convert -w 128 -h 128 logo.svg > logo-128.png
$ rsvg-convert -h 32 logo.svg > logo-32.png
<!-- or -->
$ rsvg-convert -h 32 logo.svg > logo-32.png && rsvg-convert -h 128 logo.svg > logo-128.png

Once ready, create a new directory with the chain ID, or use the existing one, and create a new directory for the token address (in lower case) you are adding.

Fill-in the details when creating the pull-request, and we'll merge it shortly!

That's it, thank you!

tokenassets's People

Contributors

majorfi avatar github-actions[bot] avatar ethzoomer avatar 0xbasically avatar dudesahn avatar veyronpepe avatar stas avatar 0xkorin avatar elvalandro avatar chromesthete avatar blackrockonbase avatar abmisx0 avatar defliteam avatar keccakdog avatar answerswap avatar schlagonia avatar itsmetazz avatar peglabs avatar belbix avatar sagarduwal avatar mil0xeth avatar jameswgc avatar bingusbaldcat avatar lucasfernandes avatar mochithecatcoin avatar lilesper avatar budezllc avatar blackrockinu avatar jgabriele321 avatar wwlawren avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.