@miguelleonmarti/bitcoincli
A blockchain cli example
Last updated a month ago by miguelleonmarti .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install @miguelleonmarti/bitcoincli 
SYNC missed versions from official npm registry.

Blockchain CLI

 ____         __
/\  _`\    __/\ \__                __
\ \ \L\ \ /\_\ \ ,_\   ___    ___ /\_\    ___
 \ \  _ <'\/\ \ \ \/  /'___\ / __`\/\ \ /' _ `\
  \ \ \L\ \\ \ \ \ \_/\ \__//\ \L\ \ \ \/\ \/\ \
   \ \____/ \ \_\ \__\ \____\ \____/\ \_\ \_\ \_\  __  __  __
    \/___/   \/_/\/__/\/____/\/___/  \/_/\/_/\/_/ /_/ /_/ /_/

NPM Version NPM Downloads

CLI (Command Line Interface) para realizar peticiones HTTP a los nodos de una red descentralizada (blockchain).

Índice

  1. Estructura del proyecto
  2. Comandos
  3. Librerías utilizadas
  4. Setup del proyecto

Estructura del proyecto

.
├── node_modules                        # código de las librerías descargadas
├── bin                                 
│   ├── btc-blockchain.js               # controlador del comando blockchain
│   ├── btc-search.js                   # controlador del comando search
|   ├── btc-transaction.js              # controlador del comando transaction
│   └── btc.js                          # controlador del comando principal
├── commmands                            
│   ├── blockchain.js                   # lógica del comando blockchain
│   ├── mine.js                         # lógica del comando mine
|   ├── search.js                       # lógica del comando search
│   └── transaction.js                  # lógica del comando transacción
├── lib                                 
│   ├── transaction.model.js            # modelo de transacción 
│   └── utils.js                        # funciones de utilidad general
└── package.json                        # archivo de configuración

Comandos

  • btc blockchain

    Nos permite obtener el estado actual de la cadena de bloques, pudiendo observar los bloques que se han ido añadiendo y sus transacciones. Además, se podrán observar las transacciones que están a la espera de ser introducidas en el siguuiente bloque, la recompensa actual por minado y la dificultad establecida para dicha tarea.

  • btc transaction

    Nos permite realizar una transacción en la cadena de bloques. Se require la dirección pública de emisor y receptor, así como la cantidad de monedas a enviar y la firma del autor.

  • btc mine

    Permite comunicar a uno de los nodos de la blockchain que ejecute la función de minado que permitirá la creación de un nuevo bloque dando lugar a la introducción de las transacciones pendientes en dicho bloque.

  • btc search

    • transaction

      Busca transacciones en la blockchain mediante el identificador de la transacción. Cuando la encuentra la muestra en la consola, de lo contrario, nos dirá que no se ha encontrado.

    • address

      Muestra el saldo de la dirección que se ha especificado.

    • block

      Muestra el bloque con el hash que hemos especificado. Si no existe, se mostrará un mensaje de error.

Librerías utilizadas

  • axios

    • Descripción: Cliente HTTP basado en promesas para el navegador y node.js
    • Características:
      • Hacer XMLHttpRequests desde el navegador
      • Hacer solicitudes http desde node.js
      • Admite la API Promise
      • Solicitud de intercepción y respuesta
      • Transformar datos de solicitud y respuesta
      • Cancelar solicitudes
      • Transformaciones automáticas para datos JSON
      • Soporte del lado del cliente para proteger contra XSRF
    • Instalación: npm install --save axios
    • Página principal: https://github.com/axios/axios
  • sha256

  • elliptic

    • Descripción: Criptografía rápida de curva elíptica en una implementación simple de javascript.
    • Instalación: npm install --save elliptic
    • Página principal: https://github.com/indutny/elliptic
  • uuid

  • chalk

  • commander

    • Descripción: La solución completa para las interfaces de línea de comandos de node.js
    • Instalación: npm install --save commander
    • Página principal: https://github.com/tj/commander.js
  • figlet

  • inquirer

    • Descripción: Una colección de interfaces de usuario de línea de comandos interactivos comunes
    • Instalación: npm install --save inquirer
    • Página principal: https://github.com/SBoudrias/Inquirer.js
  • update-notifier

Setup del proyecto

Requisitos: tener instalado Node.js y git.

  1. Clonar el repositorio:

    git clone https://github.com/miguelleonmarti/bitcoin-cli.git

  2. Instalar las dependecias:

    npm install

Current Tags

  • 1.2.0                                ...           latest (a month ago)

3 Versions

  • 1.2.0                                ...           a month ago
  • 1.1.0                                ...           a month ago
  • 1.0.0                                ...           a month ago
Maintainers (1)
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 35
Dependencies (10)
Dev Dependencies (0)
None
Dependents (0)
None

Copyright 2014 - 2017 © taobao.org |