-
Notifications
You must be signed in to change notification settings - Fork 100
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
update readme #169
Merged
Merged
update readme #169
Changes from all commits
Commits
Show all changes
17 commits
Select commit
Hold shift + click to select a range
d4a8723
update readme
f20d716
more details for rpc-related plugins
36fc336
desc for plugin dependency
e5439a0
add logo
0beca60
Improvement
superboyiii 7adc902
resolve conflicts
2e8d5b6
resolve conflicts
09ad814
Delete --log
superboyiii 48bf021
Format
superboyiii 70ef521
Minor changes
vncoelho d1dc404
Adding note about NEP5 functionalities
vncoelho c3f96f3
Updating with RpcServer
vncoelho 0040580
Merge branch 'master' into update/readme
shargon eafbdad
Merge branch 'master' into update/readme
268a59c
Fix
superboyiii c0ad937
Format
superboyiii 8512137
Remove StorageEngine
superboyiii File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,49 +1,76 @@ | ||
<p align="center"> | ||
<a href="https://neo.org/"> | ||
<img | ||
src="https://neo3.azureedge.net/images/logo%20files-dark.svg" | ||
width="250px" alt="neo-logo"> | ||
</a> | ||
</p> | ||
|
||
<p align="center"> | ||
<a href="https://travis-ci.org/neo-project/neo-modules"> | ||
<img src="https://travis-ci.org/neo-project/neo-modules.svg?branch=master" alt="Current TravisCI build status."> | ||
</a> | ||
<a href="https://github.com/neo-project/neo-modules/blob/master/LICENSE"> | ||
<img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="License"> | ||
</a> | ||
<a href="https://github.com/neo-project/neo-modules/releases"> | ||
<img src="https://badge.fury.io/gh/neo-project%2Fneo-modules.svg" alt="Current neo-modules version."> | ||
</a> | ||
</p> | ||
|
||
## What is it | ||
A set of plugins that can be used inside the NEO core library. Check [here](https://docs.neo.org/docs/en-us/node/cli/setup.html) for the official documentation. | ||
|
||
## Using plugins | ||
A set of plugins/modules that can be used inside the NEO core library is available in this repository. You can refer to [the official documentation](https://docs.neo.org/docs/en-us/node/cli/setup.html) for the more detailed usage guide. | ||
|
||
In addition, a C# SDK module is included for developers to call RPC methods with ease. | ||
|
||
## Using Plugins | ||
Plugins can be used to increase functionality, as well as providing policies definitions of the network. | ||
One common example is to add the ApplicationLogs plugin in order to enable your node to create log files. | ||
|
||
To configure a plugin, do the following: | ||
- Download the desired plugin from the [Releases page](https://github.com/neo-project/neo-plugins/releases) | ||
- Alternative: Compile from source | ||
- Clone this repository; | ||
- Open it in Visual Studio, select the plugin you want to enable and select `publish` \(compile it using Release configuration\) | ||
- Create the Plugins folder in neo-cli / neo-gui (where the binary is run from, like `/neo-cli/bin/debug/netcoreapp2.1/Plugins`) | ||
- Copy the .dll and the folder with the configuration files into this Plugin folder. | ||
- Start neo using additional parameters, if required; | ||
- In order to start logging, start neo with the `--log` option. | ||
To configure a plugin, you can directly download the desired plugin from the [Releases page](https://github.com/neo-project/neo-modules/releases). | ||
|
||
Alternatively, you can compile from source code by following the below steps: | ||
- Clone this repository; | ||
- Open it in Visual Studio, select the plugin you want to enable and select `publish` \(compile it using Release configuration\) | ||
- Create the Plugins folder in neo-cli / neo-gui (where the binary file is located, such as `/neo-cli/bin/Release/netcoreapp3.0/Plugins`) | ||
- Copy the .dll and the folder with the configuration files into the `Plugins` folder. | ||
- Remarkably, you should put the dependency of the plugin in the `Plugins` folder as well. For example, since the `RpcServer` has the package reference on the `Microsoft.AspNetCore.ResponseCompression`, so the corresponding dll file should be put together with the plugin. | ||
|
||
The resulting folder structure is going to be like this: | ||
|
||
```BASH | ||
```sh | ||
./neo-cli.dll | ||
./Plugins/ApplicationLogs.dll | ||
./Plugins/ApplicationsLogs/config.json | ||
``` | ||
|
||
## Existing plugins | ||
### Application Logs | ||
Add this plugin to your application if need to access the log files. This can be useful to handle notifications, but remember that this also largely increases the space used by the application. | ||
## Plugins/Modules | ||
|
||
### Core Metrics | ||
Metrics from the Blockchain. This can involve reports through RPC calls or other form of persisting. | ||
### ApplicationLogs | ||
Add this plugin to your application if need to access the log files. This can be useful to handle notifications, but remember that this also largely increases the space used by the application. `LevelDBStore` and `RpcServer` are also needed for this plugin. You can find more details [here](https://docs.neo.org/docs/en-us/reference/rpc/latest-version/api/getapplicationlog.html). | ||
|
||
### Import Blocks | ||
Synchronizes the client using offline packages. Follow the instructions [here](http://docs.neo.org/en-us/network/syncblocks.html) to bootstrap your network using this plugin. | ||
### SystemLog | ||
Enable neo-cli Logging with timestamps by showing messages with different levels (shown with different colors) \(useful for debugging\). | ||
|
||
### RPC NEP5 Tracker | ||
Plugin that enables NEP5 tracking using LevelDB. | ||
### StatesDumper | ||
Exports neo-cli status data \(useful for debugging\), such as storage modifications block by block. | ||
|
||
### RPC Security | ||
Improves security in RPC nodes. | ||
### LevelDBStore | ||
If there is no further modification of the configuration file of the neo-node, it is the default storage engine in the NEO system. In this case, you should paste the `LevelDBStore` in the Plugins before launching the node. | ||
|
||
### RPC Wallet | ||
Client commands for wallet management functionalities, such as signing and invoking. | ||
### RocksDBStore | ||
You can also use `RocksDBStore` in the NEO system by modifying the default storage engine section in the configuration file. | ||
|
||
### StatesDumper | ||
Exports NEO-CLI status data \(useful for debugging\). | ||
### RpcServer | ||
Plugin for hosting a RpcServer on the neo-node, being able to disable specific calls. | ||
|
||
### SystemLog | ||
Enables neo-cli Logging, with timestamps, by showing messages with different levels (differentiated by colors) \(useful for debugging\). | ||
### RpcNep5Tracker | ||
Plugin that enables NEP5 tracking using LevelDB. | ||
This module works in conjunction with RpcServer, otherwise, just local storage (on leveldb) would be created. | ||
|
||
## C# SDK | ||
|
||
### RpcClient | ||
The RpcClient Plugin is an individual SDK which is used to call NEO RPC methods for development using. | ||
In order to use the module for interacting with NEP5 functionalities `RPC NEP5 Tracker` Plugin will be needed. |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Perhaps we can leave this comment for now, I think that status is not enabled for
master
branch, correct @erikzhang?