hornet

command module
v0.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 14, 2020 License: Apache-2.0 Imports: 18 Imported by: 0

README

HORNET - The IOTA community node

GitHub Workflow Status GitHub release (latest by date) GitHub go.mod Go version GitHub

HORNET is a lightweight alternative to IOTA's fullnode software “IRI”. The main advantage is that it compiles to native code and does not need a Java Virtual Machine, which considerably decreases the amount of needed resources while significantly increasing the performance. This way, HORNET is easier to install and runs on low-end devices.


Notes
  • Currently HORNET is only released for testing purposes. Don't use it for wallet transfers (except testing with small amounts).
  • Please open a new issue if you detect an error or crash (or submit a PR if you have already fixed it).
  • The issue section is not a support section, if you have questions about HORNET please post them in the #hornet channel (official iota discord server).

Contributing
Run HORNET
  • Download the latest release for your system (e.g. HORNET-x.x.x_Linux_ARM.tar.gz for the Raspberry Pi 3B)
  • Extract the files in a folder of your choice
  • Add neighbors to the neighbors.json file
  • Download the latest HORNET snapshot from dbfiles.iota.org
  • Run HORNET: ./hornet -c config

Available plugins
TangleMonitor
  • Download the latest TangleMonitor source code
git clone https://github.com/unioproject/tanglemonitor.git
  • Modify the config.json to fit your needs
    • "tanglemonitorpath" has to point to the frontend folder of the TangleMonitor source code
    • Add "Monitor" to "enableplugins"
    • Change "host" to "0.0.0.0" if you want to access TangleMonitor from anywhere
    • Only change the "port" and the "apiPort" if you redirect them back to the default ports, because they are hardcoded in the frontend
  "monitor": {
    "tanglemonitorpath": "tanglemonitor/frontend",
    "domain": "",
    "host": "127.0.0.1",
    "port": 4434,
    "apiPort": 4433
  },
  "node": {
    "disableplugins": [],
    "enableplugins": ["Monitor"],
    "loglevel": 127
  },
IOTA Tangle Visualiser
  • Download the latest IOTA Tangle Visualiser and socket.io source code
git clone https://github.com/glumb/IOTAtangle.git
git clone https://github.com/socketio/socket.io-client.git
  • Modify the config.json to fit your needs
    • "webrootPath" has to point to the frontend folder of the IOTA Tangle Visualiser source code
    • Add "Graph" to "enableplugins"
    • Change "host" to "0.0.0.0" if you want to access IOTA Tangle Visualiser from anywhere
  "graph": {
    "webrootPath": "IOTAtangle/webroot",
    "socketiopath": "socket.io-client/dist/socket.io.js",
    "domain": "",
    "host": "127.0.0.1",
    "port": 8083,
    "networkName": "meets HORNET"
  },
  "node": {
    "disableplugins": [],
    "enableplugins": ["Graph"],
    "loglevel": 127
  },
MQTT Broker
  • Modify the mqtt_config.json to fit your needs
    • Change "host" to "0.0.0.0" if you want to access MQTT from anywhere
    • Change "port" to "" and "tlsPort" to a port number if you want to use TLS (you also need certificate files)
{
  ...
  "port": "1883",
  "host": "127.0.0.1",
  ...
  "tlsPort": "",
  "tlsHost": "",
  "tlsInfo": {
    "verify": false,
    "caFile": "tls/ca/cacert.pem",
    "certFile": "tls/server/cert.pem",
    "keyFile": "tls/server/key.pem"
  },
  "plugins": {}
}
  • Modify the config.json
    • Add "MQTT" to "enableplugins"
  "node": {
    "disableplugins": [],
    "enableplugins": ["MQTT"],
    "loglevel": 127
  },
Spammer
  • Modify the config.json to fit your needs
    • Change "address", "message" and "tag"
    • "tpsratelimit" defines how many transactions (TX) the spammer should try to send (e.g. 0.1 stands for 0.1 TX per second --> 1 TX every 10 seconds. NOTE: the maximum "tpsratelimit" is limited by your used hardware.
    • Add "Spammer" to "enableplugins"
  "spammer": {
    "address": "HORNET99INTEGRATED99SPAMMER999999999999999999999999999999999999999999999999999999",
    "depth": 3,
    "message": "Spamming with HORNET tipselect",
    "tag": "HORNET99INTEGRATED99SPAMMER",
    "tpsratelimit": 0.1,
    "workers": 1
  },
  "node": {
    "disableplugins": [],
    "enableplugins": ["Spammer"],
    "loglevel": 127
  },

Docker

Docker Pulls

Pull HORNET from Docker Hub

Build a Docker image

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
packages
dag
plugins
cli
spa
You can use the "packr clean" command to clean up this, and any other packr generated files.
You can use the "packr clean" command to clean up this, and any other packr generated files.
spa/packrd
You can use the "packr2 clean" command to clean up this, and any other packr generated files.
You can use the "packr2 clean" command to clean up this, and any other packr generated files.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL