Introduction
CoinTools is A Chrome Extension that has a few useful tools and graphs for Cryptocurrency.
Previous Contributions
Technology Stacks
Javascript that runs in Chrome.
Github
https://github.com/DoctorLai/CoinTools
Chrome Webstore
It is available online at Chrome Webstore:
https://chrome.google.com/webstore/detail/coin-tools/fmglcggbdcbkpkfapngjobfeakehpcgj
v0.0.2 Feature
Along with bug fixes and code refactoring, this version has the following features:
- Any two cryptocurrency conversions
- UI Localisation with Simplified Chinese.
Commits
Roadmap of CoinTools
- real-time graphs
- search cryptocurrency
- historical data
Screenshots
You can now select Simplified Chinese from the setting tab.
UI will be updated to Chinese immediately once you click Save.
You can enter each line any two crytocurrency separated by a space.
And when APP is loaded, it will call coinmarkcap API to convert, for example:
Javascript Async and Await to Convert from one coin to another
// ajax calling API
const getPriceOfUSD = (coin) => {
return new Promise((resolve, reject) => {
let api = "https://api.coinmarketcap.com/v1/ticker/" + coin + '/';
fetch(api, {mode: 'cors'}).then(validateResponse).then(readResponseAsJSON).then(function(result) {
resolve(result[0].price_usd);
});
});
}
// ajax get conversion
const getConversion = async(coin1, coin2) => {
let api1 = getPriceOfUSD(coin1);
let api2 = getPriceOfUSD(coin2);
return await api1 / await api2;
}
// conversion
const processConversion = (s) => {
let arr = s.trim().split("\n");
for (let i = 0; i < arr.length; i ++) {
let pair = arr[i].split(" ");
if (pair.length == 2) {
let a = pair[0].trim().toLowerCase();
let b = pair[1].trim().toLowerCase();
var pat = /^[a-zA-Z\-]+$/;
if (pat.test(a) && pat.test(b)) {
let dom = $('div#conversion_results');
let dom_id = "convert_" + a.replace("-", "") + "_" + b.replace("-", "");
dom.append(' + dom_id + '"> ');
getConversion(a, b).then(x => {
$('div#' + dom_id).html("1 "
+ a.toUpperCase() + " = " + x + " " + b.toUpperCase() + "");
});
}
}
}
}
License
Contribution Welcome
Github: https://github.com/DoctorLai/CoinTools/
- Fork it!
- Create your feature branch:
git checkout -b my-new-feature - Commit your changes:
git commit -am 'Add some feature' - Push to the branch:
git push origin my-new-feature - Submit a pull request.
Chrome Webstore
Install the CoinTools Now!
Posted on Utopian.io - Rewarding Open Source Contributors