Go Node and SDK for the NEO blockchain
Find a file
Roman Khimov d4d1c79546 _pkg.dev: drop vm
This is a nice VM, it has an interesting stack items model, better separation
of elements from stack implementation, simpler stack implementation and a bit
nicer opcode implementation mechanism. At the same time it lacks so many
features and is so differing from our current VM (that is closely tied to the
compiler) that it makes its code very hard to reuse for master's VM
improvement.

Also, some differences are non-obvious to judge in terms of better or
worse. Stack item model seems to be more extensible, but at the same time we
know very well what kind of stack items we have and this doesn't change a
lot. Slice-based stack is simple but it's hard to say which one would perform
better for real-world smart contracts (it has different tradeoffs in
operations complexity).

Based on that, I'm dropping it. Some ideas will be reused during VM
refactoring, but no more than that. Refs. #307.
2019-09-06 15:02:18 +03:00
.circleci circleci: add codecov integration 2019-08-30 16:44:51 +03:00
.github Remove mention of the bump version (#112) 2018-12-06 11:31:41 +01:00
_pkg.dev _pkg.dev: drop vm 2019-09-06 15:02:18 +03:00
cli *: add/fix godoc comments to satisfy golint 2019-09-03 17:57:51 +03:00
config *: add/fix godoc comments to satisfy golint 2019-09-03 17:57:51 +03:00
docs docs: drop contribution.md from dev 2019-08-20 19:09:17 +03:00
examples examples: remove underscores from package names 2019-09-03 18:00:10 +03:00
pkg vm: add generic stub for all unimplemented instructions 2019-09-05 17:35:30 +03:00
.dockerignore Fix build node and docker-image 2019-08-26 19:32:09 +03:00
.gitignore Merge branch 'dev-prepared-for-master' into mastev 2019-08-20 18:44:09 +03:00
.travis.yml [travis] add verbose flag to test 2019-03-30 23:52:28 +00:00
CONTRIBUTING.md CONTRIBUTING: adapt to new reality a bit 2019-08-20 19:07:58 +03:00
docker-compose.yml Adds basic docker-compose support for standing up a cluster (#74) 2018-04-28 20:20:27 +02:00
Dockerfile Fix for node run in docker introduced in a3890910f2 2019-08-30 11:21:39 +03:00
go.mod Use our RFC6979 fork 2019-08-27 13:07:02 +03:00
go.sum Use our RFC6979 fork 2019-08-27 13:07:02 +03:00
LICENSE.md LICENSE.md: rename from LICENCE.md 2019-08-20 18:47:08 +03:00
Makefile Makefile: drop deps from image dependencies 2019-08-29 16:07:33 +03:00
README.md Update README.md 2019-09-04 18:19:22 +02:00
ROADMAP.md Create ROADMAP.md 2019-01-25 12:41:43 -05:00

Go Node and SDK for the NEO blockchain.


codecov CircleCI Report GitHub release (latest SemVer) License

Overview

This project aims to be a full port of the original C# NEO project. A complete toolkit for the NEO blockchain, including:

Getting started

Installation

Go: 1.11+

Install dependencies.

neo-go uses GoModules as dependency manager:

make deps

How to setup a node

Docker

Each tagged build is built to docker hub and the :latest tag pointing at the latest tagged build.

By default the CMD is set to run a node on testnet, so to do this simply run:

 docker run -d --name neo-go -p 20332:20332 -p 20333:20333 cityofzion/neo-go

Which will start a node on testnet and expose the nodes port 20333 and 20332 for the JSON-RPC server.

Building

Build the neo-go CLI:

make build

Quick start a NEO node on the private network. This requires the neo-privatenet Docker image running on your machine.

make run

To run the binary directly:

./bin/neo-go node

By default the node will run on the private network, to change his:

./bin/neo-go node --mainnet

Available network flags:

  • --mainnet, -m
  • --privnet, -p
  • --testnet, -t

Contributing

Feel free to contribute to this project after reading the contributing guidelines.

Before starting to work on a certain topic, create an new issue first, describing the feature/topic you are going to implement.

Contact

License

  • Open-source MIT