From d4a8723fe9c2e38ba70bd1a95a991cd2465cf1e0 Mon Sep 17 00:00:00 2001 From: bettybao1209 <1062108372@qq.com> Date: Tue, 17 Dec 2019 14:08:54 +0800 Subject: [PATCH 01/13] update readme --- README.md | 55 ++++++++++++++++++++++++++++--------------------------- 1 file changed, 28 insertions(+), 27 deletions(-) diff --git a/README.md b/README.md index 62e429ad2..e9663fcb0 100644 --- a/README.md +++ b/README.md @@ -1,49 +1,50 @@ ## What is it -A set of plugins that can be used inside the NEO core library. Check [here](http://docs.neo.org/en-us/node/plugin.html) for the official documentation. +A set of plugins that can be used inside the NEO core library are 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 is included for developers to call RPC methods with ease. -## Using plugins +## 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. +- Start neo using additional parameters, if required; + - In order to start logging, start neo with the `--log` option. 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 +### LevelDB Storage Engine +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 start the node. -### Core Metrics -Metrics from the Blockchain. This can involve reports through RPC calls or other form of persisting. +### RocksDB Storage Engine +It is the choice of users for the storage engine. You can also use `RocksDBStore` in the NEO system by modifying the default storage engine section in the configuration file. -### 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. +### RPC Server +Currently, RPC server has been decoupled with the NEO library. You can install this plugin to provide RPC service outside. ### RPC NEP5 Tracker -Plugin that enables NEP5 tracking using LevelDB. - -### RPC Security -Improves security in RPC nodes. - -### RPC Wallet -Client commands for wallet management functionalities, such as signing and invoking. +Plugin that enables NEP5 tracking. ### StatesDumper Exports NEO-CLI status data \(useful for debugging\). ### SystemLog -Enables neo-cli Logging, with timestamps, by showing messages with different levels (differentiated by colors) \(useful for debugging\). +Enable neo-cli Logging with timestamps by showing messages with different levels (shown with different colors) \(useful for debugging\). + +### 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. + +## C# SDK +### RPC Client +The RPC client to call NEO RPC methods. From f20d716c399584d0b260b1ea2ba17410253ae4af Mon Sep 17 00:00:00 2001 From: bettybao1209 <1062108372@qq.com> Date: Tue, 17 Dec 2019 16:53:25 +0800 Subject: [PATCH 02/13] more details for rpc-related plugins --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index e9663fcb0..cf2441cc5 100644 --- a/README.md +++ b/README.md @@ -25,16 +25,16 @@ The resulting folder structure is going to be like this: ## Plugins ### LevelDB Storage Engine -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 start the node. +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. ### RocksDB Storage Engine It is the choice of users for the storage engine. You can also use `RocksDBStore` in the NEO system by modifying the default storage engine section in the configuration file. ### RPC Server -Currently, RPC server has been decoupled with the NEO library. You can install this plugin to provide RPC service outside. +Currently, RPC server has been decoupled with the NEO library. You can install this plugin to provide RPC service outside. Specifically, it is required to open the wallet for calling some RPC methods. For more details, you can refer to [RPC APIs](https://docs.neo.org/docs/zh-cn/reference/rpc/latest-version/api.html). ### RPC NEP5 Tracker -Plugin that enables NEP5 tracking. +This plugin can help you get the NEP-5 transaction information for the specified address. You should install the plugin `RpcServer` before enabling `RpcNep5Tracker`. [Here](https://docs.neo.org/docs/en-us/reference/rpc/latest-version/api/getnep5transfers.html) is the use case for this plugin. ### StatesDumper Exports NEO-CLI status data \(useful for debugging\). @@ -43,7 +43,7 @@ Exports NEO-CLI status data \(useful for debugging\). Enable neo-cli Logging with timestamps by showing messages with different levels (shown with different colors) \(useful for debugging\). ### 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. +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. `RpcServer` is 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). ## C# SDK ### RPC Client From 36fc336d579e1a6cc5a7e48b302e560d4cdbabe1 Mon Sep 17 00:00:00 2001 From: bettybao1209 <1062108372@qq.com> Date: Tue, 17 Dec 2019 17:35:42 +0800 Subject: [PATCH 03/13] desc for plugin dependency --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index cf2441cc5..2d7cd51c5 100644 --- a/README.md +++ b/README.md @@ -12,6 +12,7 @@ Alternatively, you can compile from source code by following the below steps: - 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. - Start neo using additional parameters, if required; - In order to start logging, start neo with the `--log` option. From e5439a09019bf80a7c4db1cc5403448b144ae4d6 Mon Sep 17 00:00:00 2001 From: bettybao1209 <1062108372@qq.com> Date: Tue, 24 Dec 2019 14:16:27 +0800 Subject: [PATCH 04/13] add logo --- README.md | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/README.md b/README.md index 2d7cd51c5..1de01bf43 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,23 @@ +

+ + neo-logo + +

+ +

+ + Current TravisCI build status. + + + License + + + Current neo-modules version. + +

+ ## What is it A set of plugins that can be used inside the NEO core library are 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 is included for developers to call RPC methods with ease. From 0beca60582f4afc7bcf694074257c2c6f6721383 Mon Sep 17 00:00:00 2001 From: Owen Zhang <38493437+superboyiii@users.noreply.github.com> Date: Tue, 24 Dec 2019 14:51:06 +0800 Subject: [PATCH 05/13] Improvement Improvement --- README.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 1de01bf43..b4175cbb5 100644 --- a/README.md +++ b/README.md @@ -45,16 +45,16 @@ The resulting folder structure is going to be like this: ``` ## Plugins -### LevelDB Storage Engine -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. +### 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` into the Plugins before launching the node. -### RocksDB Storage Engine +### RocksDBStore It is the choice of users for the storage engine. You can also use `RocksDBStore` in the NEO system by modifying the default storage engine section in the configuration file. -### RPC Server -Currently, RPC server has been decoupled with the NEO library. You can install this plugin to provide RPC service outside. Specifically, it is required to open the wallet for calling some RPC methods. For more details, you can refer to [RPC APIs](https://docs.neo.org/docs/zh-cn/reference/rpc/latest-version/api.html). +### RpcServer +Currently, RPC server has been decoupled with the NEO library. You must install this plugin to enable RPC service outside. Specifically, it is required to open the wallet for calling wallet related RPC methods. For more details, you can refer to [RPC APIs](https://docs.neo.org/docs/zh-cn/reference/rpc/latest-version/api.html). -### RPC NEP5 Tracker +### RpcNep5Tracker This plugin can help you get the NEP-5 transaction information for the specified address. You should install the plugin `RpcServer` before enabling `RpcNep5Tracker`. [Here](https://docs.neo.org/docs/en-us/reference/rpc/latest-version/api/getnep5transfers.html) is the use case for this plugin. ### StatesDumper @@ -63,7 +63,7 @@ Exports NEO-CLI status data \(useful for debugging\). ### SystemLog Enable neo-cli Logging with timestamps by showing messages with different levels (shown with different colors) \(useful for debugging\). -### Application Logs +### 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. `RpcServer` is 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). ## C# SDK From 09ad814b430eccc2567e3e5eecbe79b8a0888aa1 Mon Sep 17 00:00:00 2001 From: Owen Zhang <38493437+superboyiii@users.noreply.github.com> Date: Thu, 26 Dec 2019 10:27:38 +0800 Subject: [PATCH 06/13] Delete --log Delete --log --- README.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/README.md b/README.md index 8b6093e27..ab9e24a33 100644 --- a/README.md +++ b/README.md @@ -34,8 +34,6 @@ Alternatively, you can compile from source code by following the below steps: - 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. -- Start neo using additional parameters, if required; - - In order to start logging, start neo with the `--log` option. The resulting folder structure is going to be like this: From 48bf021c827767e59cc7260e3a02625e226b4eee Mon Sep 17 00:00:00 2001 From: Owen Zhang <38493437+superboyiii@users.noreply.github.com> Date: Thu, 26 Dec 2019 10:39:28 +0800 Subject: [PATCH 07/13] Format Format --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index ab9e24a33..3b0ed5b90 100644 --- a/README.md +++ b/README.md @@ -66,5 +66,5 @@ Enable neo-cli Logging with timestamps by showing messages with different levels 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. `RpcServer` is 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). ## C# SDK -### RPC Client -The RPC client to call NEO RPC methods. +### RpcClient +The RpcClient Plugin is an individual SDK which is used to call NEO RPC methods for development using. From 70ef5211d55eccbc511ce6d6082d8acae6914293 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vitor=20Naz=C3=A1rio=20Coelho?= Date: Thu, 9 Jan 2020 06:10:19 -0300 Subject: [PATCH 08/13] Minor changes --- README.md | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 3b0ed5b90..a52fae36f 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,9 @@ ## What is it -A set of plugins 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 is included for developers to call RPC methods with ease. +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. @@ -43,21 +45,10 @@ The resulting folder structure is going to be like this: ./Plugins/ApplicationsLogs/config.json ``` -## Plugins -### 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. - -### RocksDBStore -It is the choice of users for the storage engine. You can also use `RocksDBStore` in the NEO system by modifying the default storage engine section in the configuration file. - -### RpcServer -Currently, RPC server has been decoupled with the NEO library. You must install this plugin to enable RPC service outside. Specifically, it is required to open the wallet for calling wallet related RPC methods. For more details, you can refer to [RPC APIs](https://docs.neo.org/docs/zh-cn/reference/rpc/latest-version/api.html). - -### RpcNep5Tracker -This plugin can help you get the NEP-5 transaction information for the specified address. You should install the plugin `RpcServer` before enabling `RpcNep5Tracker`. [Here](https://docs.neo.org/docs/en-us/reference/rpc/latest-version/api/getnep5transfers.html) is the use case for this plugin. +## Plugins/Modules ### StatesDumper -Exports NEO-CLI status data \(useful for debugging\). +Exports neo-cli status data \(useful for debugging\), such as storage modifications block by block. ### SystemLog Enable neo-cli Logging with timestamps by showing messages with different levels (shown with different colors) \(useful for debugging\). @@ -65,6 +56,16 @@ Enable neo-cli Logging with timestamps by showing messages with different levels ### 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. `RpcServer` is 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). -## C# SDK -### RpcClient +### Storage Engine +There, currently, two option for users for the storage engine. + +#### 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. + +#### RocksDBStore +You can also use `RocksDBStore` in the NEO system by modifying the default storage engine section in the configuration file. + +### C# SDK + +#### RpcClient The RpcClient Plugin is an individual SDK which is used to call NEO RPC methods for development using. From d1dc4040f60c04d42a00223beb55e03319c44382 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vitor=20Naz=C3=A1rio=20Coelho?= Date: Thu, 9 Jan 2020 06:51:42 -0300 Subject: [PATCH 09/13] Adding note about NEP5 functionalities --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index a52fae36f..0f8c7a17c 100644 --- a/README.md +++ b/README.md @@ -59,6 +59,9 @@ Add this plugin to your application if need to access the log files. This can be ### Storage Engine There, currently, two option for users for the storage engine. +### RPC NEP5 Tracker +Plugin that enables NEP5 tracking using LevelDB. + #### 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. @@ -69,3 +72,4 @@ You can also use `RocksDBStore` in the NEO system by modifying the default stora #### 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. From c3f96f392934a62df010f3554bff018bf9491d22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vitor=20Naz=C3=A1rio=20Coelho?= Date: Thu, 9 Jan 2020 07:04:20 -0300 Subject: [PATCH 10/13] Updating with RpcServer --- README.md | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 0f8c7a17c..002ae6311 100644 --- a/README.md +++ b/README.md @@ -47,27 +47,32 @@ The resulting folder structure is going to be like this: ## Plugins/Modules -### StatesDumper -Exports neo-cli status data \(useful for debugging\), such as storage modifications block by block. +### 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. `RpcServer` is 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). ### SystemLog Enable neo-cli Logging with timestamps by showing messages with different levels (shown with different colors) \(useful for debugging\). -### 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. `RpcServer` is 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). +### StatesDumper +Exports neo-cli status data \(useful for debugging\), such as storage modifications block by block. + ### Storage Engine There, currently, two option for users for the storage engine. -### RPC NEP5 Tracker -Plugin that enables NEP5 tracking using LevelDB. - #### 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. #### RocksDBStore You can also use `RocksDBStore` in the NEO system by modifying the default storage engine section in the configuration file. +### RpcServer +Plugin for hosting a RpcServer on the neo-node, being able to disable specific calls. + +### 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 From 268a59ce2daf1107d57cec5347e58f5eb88c66d2 Mon Sep 17 00:00:00 2001 From: Owen Zhang <38493437+superboyiii@users.noreply.github.com> Date: Wed, 22 Jan 2020 13:29:59 +0800 Subject: [PATCH 11/13] Fix Fix --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 002ae6311..ef58fe64b 100644 --- a/README.md +++ b/README.md @@ -48,7 +48,7 @@ The resulting folder structure is going to be like this: ## Plugins/Modules ### 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. `RpcServer` is 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). +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). ### SystemLog Enable neo-cli Logging with timestamps by showing messages with different levels (shown with different colors) \(useful for debugging\). From c0ad937161abc9e30127b38cfc626802d1c73785 Mon Sep 17 00:00:00 2001 From: Owen Zhang <38493437+superboyiii@users.noreply.github.com> Date: Wed, 22 Jan 2020 13:38:10 +0800 Subject: [PATCH 12/13] Format Format --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index ef58fe64b..41c4b2e78 100644 --- a/README.md +++ b/README.md @@ -60,10 +60,10 @@ Exports neo-cli status data \(useful for debugging\), such as storage modificati ### Storage Engine There, currently, two option for users for the storage engine. -#### LevelDBStore +### 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. -#### RocksDBStore +### RocksDBStore You can also use `RocksDBStore` in the NEO system by modifying the default storage engine section in the configuration file. ### RpcServer @@ -73,8 +73,8 @@ Plugin for hosting a RpcServer on the neo-node, being able to disable specific c 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 +## C# SDK -#### RpcClient +### 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. From 8512137556057ce877db1be09b0e2c608778669d Mon Sep 17 00:00:00 2001 From: Owen Zhang <38493437+superboyiii@users.noreply.github.com> Date: Wed, 22 Jan 2020 13:39:52 +0800 Subject: [PATCH 13/13] Remove StorageEngine Remove StorageEngine --- README.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/README.md b/README.md index 41c4b2e78..bb73063d3 100644 --- a/README.md +++ b/README.md @@ -56,10 +56,6 @@ Enable neo-cli Logging with timestamps by showing messages with different levels ### StatesDumper Exports neo-cli status data \(useful for debugging\), such as storage modifications block by block. - -### Storage Engine -There, currently, two option for users for the storage engine. - ### 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.