dan-da/coinparams

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

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

This package is auto-updated.

Last update: 2024-09-10 11:22:35 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等),值是手动获得的。

例如网站网址和最大供应量的元数据已从coinmarketcap.com抓取。

如何测试值

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

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

欢迎贡献。

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

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

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

拉取请求

请包括运行以下命令的输出

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

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

待办事项

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

自行承担风险。

作者不保证正确性。

使用此软件时,您同意承担在使用前后可能发生的任何损失的全部责任,无论其原因是何种,并且不以任何方式追究软件作者的赔偿责任。