placecodex/coinparams

提供特定加密货币的信息,如版本号、DNS种子等,以JSON格式提供

v0.2.9 2018-10-18 16:13 UTC

README

本项目提供特定加密货币的信息,如密钥前缀、DNS种子、网络端口等。

数据以JSON格式和可读表格提供。支持JS和PHP语言绑定。

适用于快速参考或任何处理多种加密货币的软件,无论编程语言。

以下是数据。

上述文件主要包含比特币派生币的数据。

未列出的币和代币的一些附加元数据可以在coinmeta.json中找到。

使用方法

适用于任何语言

只需将coinparams.json复制到您的项目中,并像读取任何JSON文件一样读取它。

JS

首先,使用npm安装该包

npm install coinparams --save

然后,引入包并像这样使用它

var coinparams = require('coinparams');

console.log(coinparams.get_coin('BTC'));
console.log(coinparams.get_coin_network('DASH', 'test'));

// console.log(coinparams.get_all_coins());
// console.log(coinparams.get_raw_json());

PHP

$ cd yourproject
$ composer require dan-da/coinparams

在您的代码中包含并使用

require_once 'path/to/vendor/autoload.php';

// get all info for single coin
$info = coinParams::get_coin('BTC');

// get info for a coin + network (main, test, regest)
$info = coinParams::get_coin_network('DOGE', 'main');

// get info for all coins
$info = coinParams::get_all_coins();

// get raw json text for all coins
$buf = coinParams::get_raw_json();

值是如何获取的

对于比特币及其派生币,值已从github上每个加密货币仓库的原始源代码中自动解析。脚本gen-masters-from-coin-src.php执行此任务。

对于非比特币派生币(例如eth、monero、decred等),值是手动获得的。

网站URL和最大供应量等元数据已从coinmarketcap.com抓取。

值是如何测试的

有一个简单的验证脚本,它检查JSON树结构中是否存在任何问题,例如缺失或空字段。它不保证值的正确性。

尚未尝试进行高级测试,例如生成地址或连接到每个替代币的运行实例。

欢迎贡献。

如果您想添加新币或更新现有币,请提交拉取请求。在./coins目录中每个币都有一个文件。只需使用现有的文件(例如BTC.json)作为模板。

如果您想添加比特币派生币,可以尝试将其添加到gen-masters-from-coin-src.php中的列表。然后运行脚本。如果成功,使用check-masters-valid.php验证,然后提交脚本的拉取请求和新币.json文件。

如果您想添加新的语言绑定,请参阅bindings/php或bindings/js下的示例,并尽量保持API相似。此外,请尽量在每个语言的项目根目录中使用不超过一个文件(例如包管理器)。

拉取请求

请包含运行以下内容的输出

$ ./check-masters-valid.php <yourcoin-symbol>

文件应完全验证(主要、测试、regtest),才能接受拉取请求。

待办事项

  • 添加更多币。特别是市值前20的币。许多是非比特币代码库。
  • 为其他语言添加绑定,以便轻松安装和使用列表作为类。
  • 添加元字段,如哈希算法、POW、POS、可挖掘等...
  • 添加种子节点列表(例如:btc主网有超过1500个)
  • 在读取每个币的单独JSON文件时使用json5解析器。这将允许在文件中使用注释。
  • 记录使用的模式/格式。
  • 添加更好的测试。

自行承担风险。

作者不做任何关于正确性的声明或保证。

使用此软件时,您同意承担在使用前、使用期间或使用后产生的任何损失的全部责任,并不得以任何方式追究软件作者的赔偿责任。