Skip to content

Commit

Permalink
Merge pull request #157 from neo-project/dev
Browse files Browse the repository at this point in the history
Merge recent changes from dev to master
  • Loading branch information
Celia18305 authored Nov 5, 2024
2 parents 4fff367 + f02fddf commit 7258b37
Show file tree
Hide file tree
Showing 448 changed files with 14,492 additions and 10,055 deletions.
2 changes: 1 addition & 1 deletion docs/faq/cli.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,4 +29,4 @@ The openwallet method is disabled by default in the RpcServer config file for se

## How to view NEP-17 asset balances in Neo-CLI?

To view NEP-17 asset balances for a given address, invoke the RPC API [getnep17balances](../n3/reference/rpc/latest-version/api/getnep17balances) or use the Neo-CLI command [balanceof](../n3/node/cli/cli#balanceof) .
To view NEP-17 asset balances for a given address, invoke the RPC API [getnep17balances](../n3/reference/rpc/getnep17balances.md) or use the Neo-CLI command [balanceof](../n3/node/cli/cli.md#balanceof) .
1,128 changes: 0 additions & 1,128 deletions docs/n3/Advances/Neo VM instructions.md

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,5 @@ Please join us on the Neo discord server if you would like any support and pleas
With time there will be an easy to use 'get things done' API for Go, and a starter app for Javascript developers to build on top of.

:::note
Best place to get started is probably in the [overview](/neo-docs/introduction/overview) area, or if you want to get cracking, head over the [creating a wallet!](/neo-docs/tutorials/wallets)
Best place to get started is probably in the `overview` area, or if you want to get cracking, head over the `creating a wallet`!
:::
Original file line number Diff line number Diff line change
@@ -1,43 +1,40 @@
---
title: "Concepts"
date: 2022-01-18T21:13:48Z
---
# Concepts

NeoFS is very carefully designed to offer the power of a filesytem with all the expected capabilities, on top of a decentralised network.

This means that files/folders etc can have permissions to who can read/write to them who can delete etc etc.

As NeoFS is built on top of the Neo blockchain, these permissions are based on wallet addresses of users.

### Objects
## Objects

[Objects](/docs/n3/neofs/topics/objects) represent all files/data that is stored on NeoFS. Objects are accessed via SessionTokens or Bearer Tokens
[Objects](../topics/objects.md) represent all files/data that is stored on NeoFS. Objects are accessed via SessionTokens or Bearer Tokens

### Containers
## Containers

A [container](/docs/n3/neofs/topics/containers) controls the basic permissions that are applied to all content within it. Think of a container like a drive on a computer or network (and not a folder per se).
A [container](../topics/containers.md) controls the basic permissions that are applied to all content within it. Think of a container like a drive on a computer or network (and not a folder per se).

All objects must live within a container, their permissions will default to the permissions of the container

### OwnerID
## OwnerID

OwnerID is derived from the public or private key of a wallet and is unique to that wallet.

### Policies
## Policies

Container policies define the way objects will be placed among storage nodes. That is, you as the container owner can decide what type of node should store a file for you.

### EACL
## EACL

Containers and sessions/bearer tokens can have differeing permissions. By default permissions will be the same as the container's however if permissions are attached as a table to the container, or a bearer token is sent as part of a request, then they can override the permissions of the container

Read more about [ACL here](https://github.com/nspcc-dev/neofs-spec/blob/master/01-arch/07-acl.md)

### Access
## Access

Access is made using session tokens (derived from the private key), or bearer tokens, which are distributed by the container owner to others they want to be able to offer restricted capabilities (and time limits) to other users

### Wallets
## Wallets

A wallet is specifically an item that takes the NEP-6 format and contains any number of accounts. Accounts contain a public address, a private key and other information (read more here)

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@
---
title: "Libraries"
date: 2022-01-18T21:13:48Z
---
# Libraries

The Go SDK is the basis of all the functionality that is available to you as a developer with regards to NeoFS.

Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
---
title: "Overview"
date: 2022-01-18T21:13:48Z
---
# Overview

This chapter outlines the [concepts](/docs/n3/neofs/introduction/concepts) and top level points required to understand and enjoy building on neo & NeoFS
This chapter outlines the [concepts](concepts.md) and top level points required to understand and enjoy building on neo & NeoFS

### Starting out
## Starting out

The topics here are primarily in Go, however where we have code snippets for other languages we will endeavour to add them.

Expand All @@ -14,7 +11,7 @@ You will need:
1. Go language installed and running
2. [NeoFS SDK - Go](https://github.com/nspcc-dev/neofs-sdk-go)
3. [Neo Go library](https://github.com/nspcc-dev/neo-go)
4. Read the [wallets](/docs/n3/neofs/topics/wallets/) page as it will outline the basis of working with Neo and NeoFS - a wallet.
4. Read the [wallets](../topics/wallets.md) page as it will outline the basis of working with Neo and NeoFS - a wallet.
5. Neo/Gas in your wallet. You can get these from the [testnet faucet here](https://neowish.ngd.network/#/)
6. These libraries will assume you are using the testnet throughout. All urls referenced can be retrieved from NeoFS or from Dora the explorer.

Expand All @@ -31,14 +28,14 @@ This documentation is not a tutorial, it is a reference to using the SDK, howeve
5. To do so however, you will need a session token (or a bearer token but start with a session token). The session token contains a signature that validates your wallet against NeoFS.
6. You might create a container, put an object in a container, or delete an object.

### Libraries
## Libraries

[Libraries](/docs/n3/neofs/introduction/libraries) covers the packages and libraries that are required to interact with Neo and NeoFS in Go
[Libraries](libraries.md) covers the packages and libraries that are required to interact with Neo and NeoFS in Go

### References
## References

* [neofs-spec](https://nspcc.ru/upload/neofs-spec-latest.pdf#13)

### With Thanks To
## With Thanks To

* [NSPCC team](https://github.com/nspcc-dev/) - team behind NeoFS, the [neo-go-sdk](https://github.com/nspcc-dev/neofs-sdk-go) and the [neo-go](github.com/nspcc-dev/neo-go) packages
* [NSPCC team](https://github.com/nspcc-dev/) - team behind NeoFS, the [neo-go-sdk](https://github.com/nspcc-dev/neofs-sdk-go) and the [neo-go](https://github.com/nspcc-dev/neo-go) packages
Original file line number Diff line number Diff line change
@@ -1,12 +1,4 @@
---
title: "ACL Permissions"
date: 2022-01-18T21:13:48Z
---

import CodeBlock from '@theme/CodeBlock';
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

# ACL Permissions

NeoFS has an awesome set of permissions you can give to containers.

Expand Down Expand Up @@ -90,7 +82,7 @@ _We are creating a rule for when an actor attempts to make a request to our cont
* Or a specific public key of an account
* For each type of target, you can specify whether you want it to be included in the rule
3. **Filters**
* Where these ACL rules can get really powerful is when they are combined with object attributes. Once you have read about [object attributes](/docs/n3/neofs/topics/objects) you will know that when an object is uploaded to a container, attributes can be attached to it. These attributes can be searched/filtered as part of building up an ACL rule
* Where these ACL rules can get really powerful is when they are combined with object attributes. Once you have read about [object attributes](objects.md) you will know that when an object is uploaded to a container, attributes can be attached to it. These attributes can be searched/filtered as part of building up an ACL rule
4. **Action**
* And **finally** the whole point of the rule in the first place - the action decides what the rule, if a match is made, either to `ALLOW` or `DENY` the request

Expand Down Expand Up @@ -200,7 +192,7 @@ You can read more about EACL rule ordering and execution here in the [NeoFS spec
The first thing you can do is specify this against the whole container. This maybe something you would do if you were wanting to share the container's contents with someone.

You will need
1. a [NeoFS client](/docs/n3/neofs/topics/clients)
1. a [NeoFS client](clients.md)


```go
Expand Down Expand Up @@ -237,11 +229,11 @@ Of course this can be handled better with channels

#### Bearer Token

There is more on [Bearer Tokens here](/docs/n3/neofs/topics/tokens), however you can add these Extended ACL rules to them so that the account that is issued with the token, can access objects within the container based on the Extended ACL rules.
There is more on [Bearer Tokens here](tokens.md), however you can add these Extended ACL rules to them so that the account that is issued with the token, can access objects within the container based on the Extended ACL rules.

To create a bearer token, you will need the private key of the container owner (`containerOwnerKey`).

This is further explained in [Bearer Tokens](/docs/n3/neofs/topics/tokens)
This is further explained in [Bearer Tokens](tokens.md)

```go
btoken := token.NewBearerToken()
Expand All @@ -260,5 +252,5 @@ if err != nil {
return fmt.Errorf("error marshaling token: %w", err)
}
```
You can then issue the tokenBytes to whichever account should have it. See [Bearer Tokens](/docs/n3/neofs/topics/tokens) for more information
You can then issue the tokenBytes to whichever account should have it. See [Bearer Tokens](tokens.md) for more information

Original file line number Diff line number Diff line change
@@ -1,11 +1,4 @@
---
title: "Clients"
date: 2022-01-18T21:13:48Z
---

import CodeBlock from '@theme/CodeBlock';
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
# Clients

There are two types of client to be aware of and as they are both clients it can get confusing. You have a wallet client and an NeoFS client.
Interactions with NeoFS will require a NeoFS client, whereas wallet actions will require a wallet client. Note they do not reside in the same package
Expand Down Expand Up @@ -61,7 +54,7 @@ if err != nil {
}
```

* Private key can be retrieved from a [wallet](/docs/n3/neofs/topics/wallets) - its type is `*ecdsa.PrivateKey`
* Private key can be retrieved from a [wallet](wallets.md) - its type is `*ecdsa.PrivateKey`
* The network is a string, for now you can use

```go
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,4 @@
---
title: "Containers"
date: 2022-01-18T21:13:48Z
---

import CodeBlock from '@theme/CodeBlock';
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
# Containers

Containers manage the permissions/access of a group of objects that are being stored. Before being able to store an object, you need to create a container.

Expand All @@ -19,10 +12,10 @@ Containers manage the permissions/access of a group of objects that are being st

Before being able to create a container, you will need to

- create a [policy](/docs/n3/neofs/topics/policies) (`placementPolicy`)
- have access to a private key. This is retrieved from a json file using the [helper function](/docs/n3/neofs/topics/helpers/#get-credentials-from-path) `helper.GetCredentialsFromPath` (`key`)
- create a [policy](policies.md) (`placementPolicy`)
- have access to a private key. This is retrieved from a json file using the [helper function](helpers.md#get-credentials-from-path) `helper.GetCredentialsFromPath` (`key`)
- Decide on a set of permissions, (`permissions`)
- Have created a [NeoFS client](/docs/n3/neofs/topics/clients) (`cli`)
- Have created a [NeoFS client](clients.md) (`cli`)

### Owner ID

Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,4 @@
---
title: "Helper functions"
date: 2022-01-18T21:13:48Z
---

import CodeBlock from '@theme/CodeBlock';
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
# Helper functions

There are some functions that don't quite fit into another topic. They will be referenced as `helper.X` in other topics

Expand Down Expand Up @@ -53,7 +46,7 @@ func StringToUint160(s string) (u util.Uint160, err error) {

## Get credentials from path

This returns the private key, which anything can be derived from, with regards to a [wallet](/docs/n3/neofs/topics/wallets)
This returns the private key, which anything can be derived from, with regards to a [wallet](wallets.md)

```go
// GetCredentialsFromPath retrieves the private key from a wallet file
Expand Down
Original file line number Diff line number Diff line change
@@ -1,24 +1,17 @@
---
title: "Objects"
date: 2022-01-18T21:13:48Z
---
# Objects

import CodeBlock from '@theme/CodeBlock';
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

Objects represent items stored within a [container](/docs/n3/neofs/topics/containers). These are subject to the permissions of the container being the most relaxed possible permissions that can be applied to an object. It is possible using [Session/Bearer Tokens](/docs/n3/neofs/topics/tokens) to restrict permissions further on objects within a container however
Objects represent items stored within a [container](containers.md). These are subject to the permissions of the container being the most relaxed possible permissions that can be applied to an object. It is possible using [Session/Bearer Tokens](tokens.md) to restrict permissions further on objects within a container however

Please note actions on objects are restricted by the permissions on the container AND the permissions of the token used to access the functions.

## Uploading Objects

### you will need

- A [session token](/docs/n3/neofs/topics/tokens)
- A [container](/docs/n3/neofs/topics/containers) ID to upload the object to, with the correct permissions
- An [object](/docs/n3/neofs/topics/objects) to upload (`filepath`)
- Have created a [NeoFS client](/docs/n3/neofs/topics/clients) (`cli`)
- A [session token](tokens.md)
- A [container](containers.md) ID to upload the object to, with the correct permissions
- An [object](objects.md) to upload (`filepath`)
- Have created a [NeoFS client](clients.md) (`cli`)

### Attributes

Expand All @@ -45,11 +38,11 @@ attributes = append(attributes, []*object.Attribute{timeStampAttr, fileNameAttr,

:::note
If you have set the FileName attribute, you can also refer to the object by its filename, i.e
https://http.testnet.fs.neo.org/CONTAINER_ID/upload.png when its uploaded, (see [acl permissions](/docs/n3/neofs/topics/acl-permissions))
https://http.testnet.fs.neo.org/CONTAINER_ID/upload.png when its uploaded, (see [acl permissions](acl-permissions.md))
:::

### Session Token
See [tokens](/docs/n3/neofs/topics/tokens) for how to create a session token
See [tokens](tokens.md) for how to create a session token

## Upload

Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,4 @@
---
title: "Policies"
date: 2022-01-18T21:13:48Z
---

import CodeBlock from '@theme/CodeBlock';
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
# Policies

Before we can create a container, we need to define the policy. A policy defines which storage nodes on NeoFS you are happy to store your data on.

Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,6 @@
---
title: "Tokens"
date: 2022-01-18T21:13:48Z
---
# Tokens

import CodeBlock from '@theme/CodeBlock';
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

Tokens are required to act on any [objects](/docs/n3/neofs/topics/objects) within a [container](/docs/n3/neofs/topics/containers). Sessions last for limited time and are restricted by permissions. [Session tokens](/docs/n3/neofs/topics/tokens) use the private key to sign them while [bearer tokens](/examples/tokens) are issued to wallets by a container owner.
Tokens are required to act on any [objects](objects.md) within a [container](containers.md). Sessions last for limited time and are restricted by permissions. [Session tokens](tokens.md) use the private key to sign them while `bearer tokens` are issued to wallets by a container owner.

## Session Tokens

Expand All @@ -19,8 +12,8 @@ You will need

1. to decide how long the token should last (e.g `const DEFAULT_EXPIRATION = 140000`)
2. a context (generally you can use `context.Background()`) but this depends on your usecase
3. A [NeoFS client](/docs/n3/neofs/topics/clients)
4. have access to a private key. This is retrieved from a json file using the [helper function](/docs/n3/neofs/topics/helpers/#get-credentials-from-path) `helper.GetCredentialsFromPath` (`key`)
3. A [NeoFS client](clients.md)
4. have access to a private key. This is retrieved from a json file using the [helper function](helpers.md#get-credentials-from-path) `helper.GetCredentialsFromPath` (`key`)

### Libraries

Expand Down Expand Up @@ -64,17 +57,17 @@ Session tokens are all that is required for the owner, or the account with the p

## Bearer Tokens

Bearer tokens allow the account that owns the container, to issue limited time access tokens to other accounts. Bearer tokens require rules to be applied to grant access and to deny access to anyone else. Read more about [EACL Tables](/docs/n3/neofs/topics/acl-permissions) to get a better understanding of what they are
Bearer tokens allow the account that owns the container, to issue limited time access tokens to other accounts. Bearer tokens require rules to be applied to grant access and to deny access to anyone else. Read more about [EACL Tables](acl-permissions.md) to get a better understanding of what they are

Once an account has a bearer token it can pass the token along with any request to the container as it does a Session Token.

You will need

1. A [NeoFS client](/docs/n3/neofs/topics/clients)
1. A [NeoFS client](clients.md)
2. A context (`context.Background` is fine in most cicumstances)
3. When you want the bearer token to expire, in epochs. See helpers for a basic estimation
4. The ownerID of the intended account (see helpers) (`tokenReceiverOwnerID`)
5. An [EACL table](/docs/n3/neofs/topics/ecl-permissions)
5. An [EACL table](acl-permissions.md)
6. The container owner's private key (`containerOwnerPrivateKey`)

```go
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,4 @@
---
title: "Wallets"
date: 2022-01-18T21:13:48Z
---

import CodeBlock from '@theme/CodeBlock';
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
# Wallets

Almost everything you may want to do with NeoFS will require access to a wallet. Here are a few handy ways to get a wallet

Expand Down Expand Up @@ -166,7 +159,7 @@ Once you have this, you can now retrieve your NeoFS balance
You will need

1. Private key
2. [NeoFS client](/docs/n3/neofs/topics/clients) (`cli`)
2. [NeoFS client](clients.md) (`cli`)

```go
w, err := owner.NEO3WalletFromPublicKey(&key.PublicKey)
Expand Down
Binary file removed docs/n3/assets/2017-08-24_11-53-31.png
Binary file not shown.
Binary file removed docs/n3/assets/JavaFrameworkjar-1.jpg
Binary file not shown.
Binary file removed docs/n3/assets/JavaFrameworkjar-2.jpg
Binary file not shown.
Binary file removed docs/n3/assets/JavaFrameworkjar-3.jpg
Binary file not shown.
Binary file removed docs/n3/assets/antcha.png
Binary file not shown.
Binary file modified docs/n3/assets/api_3.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/n3/assets/api_4.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/n3/assets/api_5.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/n3/assets/api_6.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed docs/n3/assets/build_neo_contract_project.png
Binary file not shown.
Binary file removed docs/n3/assets/build_neo_neoa.png
Binary file not shown.
Binary file removed docs/n3/assets/cNode.png
Binary file not shown.
Binary file removed docs/n3/assets/cli_2.png
Binary file not shown.
Binary file removed docs/n3/assets/cli_sync.png
Binary file not shown.
Binary file removed docs/n3/assets/compile_smart_contract.png
Binary file not shown.
Binary file removed docs/n3/assets/consensus.iterations.png
Binary file not shown.
Binary file removed docs/n3/assets/consensus.timeout.png
Binary file not shown.
Binary file removed docs/n3/assets/consensus_flowchart.jpg
Binary file not shown.
Binary file removed docs/n3/assets/create_neo_contract.png
Binary file not shown.
Binary file not shown.
Binary file removed docs/n3/assets/edit_environmental_variables.png
Binary file not shown.
Binary file removed docs/n3/assets/getvalidator1.png
Binary file not shown.
Binary file removed docs/n3/assets/getvalidator2.png
Binary file not shown.
Binary file removed docs/n3/assets/gui_58.png
Binary file not shown.
Binary file removed docs/n3/assets/gui_60.png
Binary file not shown.
Diff not rendered.
Binary file removed docs/n3/assets/mac1.png
Diff not rendered.
Binary file removed docs/n3/assets/mac3.png
Diff not rendered.
Binary file removed docs/n3/assets/mac4.png
Diff not rendered.
Binary file removed docs/n3/assets/mac5.png
Diff not rendered.
Binary file removed docs/n3/assets/nNode.png
Diff not rendered.
Binary file removed docs/n3/assets/neo-vm.jpg
Diff not rendered.
Binary file removed docs/n3/assets/neo_addpackage.png
Diff not rendered.
Binary file removed docs/n3/assets/neo_contract_build_avm.png
Diff not rendered.
Binary file removed docs/n3/assets/neolocal.png
Diff not rendered.
Binary file removed docs/n3/assets/neoscan.png
Diff not rendered.
Binary file removed docs/n3/assets/neotracker.png
Diff not rendered.
Binary file removed docs/n3/assets/new_smart_contract_project.png
Diff not rendered.
Binary file removed docs/n3/assets/notification_1.jpg
Diff not rendered.
Binary file removed docs/n3/assets/notification_2.jpg
Diff not rendered.
Binary file removed docs/n3/assets/plugins.png
Diff not rendered.
Diff not rendered.
Binary file removed docs/n3/assets/privatechain_1.png
Diff not rendered.
Binary file removed docs/n3/assets/privatechain_27.png
Diff not rendered.
Binary file removed docs/n3/assets/privatechain_28.png
Diff not rendered.
Binary file removed docs/n3/assets/privatechain_28_2.png
Diff not rendered.
Binary file removed docs/n3/assets/privatechain_29.png
Diff not rendered.
Binary file removed docs/n3/assets/privatechain_3.png
Diff not rendered.
Binary file removed docs/n3/assets/privatechain_30.png
Diff not rendered.
Binary file removed docs/n3/assets/privatechain_31.png
Diff not rendered.
Binary file removed docs/n3/assets/privatechain_32.png
Diff not rendered.
Binary file removed docs/n3/assets/privatechain_8.png
Diff not rendered.
Binary file removed docs/n3/assets/privatechain_9.png
Diff not rendered.
Binary file removed docs/n3/assets/publish_and_profile_settings.png
Diff not rendered.
Binary file removed docs/n3/assets/publish_neo_compiler_msil_project.png
Diff not rendered.
Binary file removed docs/n3/assets/publish_neo_compiler_neoj.png
Diff not rendered.
Binary file removed docs/n3/assets/scan.png
Diff not rendered.
Binary file removed docs/n3/assets/seedlist.png
Diff not rendered.
Binary file removed docs/n3/assets/signature.png
Diff not rendered.
Binary file removed docs/n3/assets/smart_contract_function_code.png
Diff not rendered.
Binary file removed docs/n3/assets/speakerNode.png
Diff not rendered.
Binary file removed docs/n3/assets/statebrowser.png
Diff not rendered.
Binary file removed docs/n3/assets/syncblocks_1.png
Diff not rendered.
Binary file removed docs/n3/assets/syncblocks_2.png
Diff not rendered.
Binary file removed docs/n3/assets/syncblocks_3.png
Diff not rendered.
Binary file removed docs/n3/assets/test1.png
Diff not rendered.
Binary file removed docs/n3/assets/test2.png
Diff not rendered.
Binary file removed docs/n3/assets/test3.png
Diff not rendered.
Binary file removed docs/n3/assets/test4.png
Diff not rendered.
Binary file removed docs/n3/assets/test_1.jpg
Diff not rendered.
Binary file removed docs/n3/assets/testnet_1.png
Diff not rendered.
Binary file removed docs/n3/assets/testnet_1_v2.png
Diff not rendered.
Binary file removed docs/n3/assets/testnet_2.png
Diff not rendered.
Binary file removed docs/n3/assets/testnet_4.png
Diff not rendered.
Binary file removed docs/n3/develop/assets/2017-05-10_13-45-48.jpg
Diff not rendered.
Binary file removed docs/n3/develop/assets/2017-05-10_13-47-10.jpg
Diff not rendered.
Binary file removed docs/n3/develop/assets/2017-05-10_15-38-46.jpg
Diff not rendered.
Binary file removed docs/n3/develop/assets/2017-05-10_15-50-48.jpg
Diff not rendered.
Binary file removed docs/n3/develop/assets/2017-05-10_16-08-48.jpg
Diff not rendered.
Binary file removed docs/n3/develop/assets/2017-05-10_16-25-09.jpg
Diff not rendered.
Binary file removed docs/n3/develop/assets/2017-05-10_16-27-40.jpg
Diff not rendered.
Binary file removed docs/n3/develop/assets/2017-05-10_16-28-39.jpg
Diff not rendered.
Binary file removed docs/n3/develop/assets/2017-05-10_16-31-55.jpg
Diff not rendered.
Binary file removed docs/n3/develop/assets/2017-05-10_18-22-39.jpg
Diff not rendered.
Binary file removed docs/n3/develop/assets/2017-05-10_18-37-05.jpg
Diff not rendered.
Binary file removed docs/n3/develop/assets/2017-05-10_18-46-05.jpg
Diff not rendered.
Binary file removed docs/n3/develop/assets/2017-05-10_18-48-11.jpg
Diff not rendered.
Binary file removed docs/n3/develop/assets/2017-05-10_18-52-10.jpg
Diff not rendered.
Binary file removed docs/n3/develop/assets/2017-05-10_9-48-54.jpg
Diff not rendered.
Binary file removed docs/n3/develop/assets/dyn03.png
Diff not rendered.
Binary file removed docs/n3/develop/assets/dyn04.png
Diff not rendered.
Binary file removed docs/n3/develop/assets/dyncallx.png
Diff not rendered.
Binary file removed docs/n3/develop/assets/mac2.png
Diff not rendered.
Binary file removed docs/n3/develop/assets/mac8.png
Diff not rendered.
Binary file removed docs/n3/develop/assets/migrate_m1.png
Diff not rendered.
Binary file removed docs/n3/develop/assets/migrate_m2.png
Diff not rendered.
Binary file removed docs/n3/develop/assets/migrate_m3.png
Diff not rendered.
Binary file removed docs/n3/develop/assets/migrate_m4.png
Diff not rendered.
Binary file removed docs/n3/develop/assets/migrate_m5.png
Diff not rendered.
Binary file removed docs/n3/develop/assets/privatechain_1.png
Diff not rendered.
Binary file removed docs/n3/develop/assets/privatechain_3.png
Diff not rendered.
Binary file removed docs/n3/develop/assets/privatechain_8.png
Diff not rendered.
Binary file removed docs/n3/develop/assets/privatechain_9.png
Diff not rendered.
Binary file removed docs/n3/develop/assets/privatechain_listasset.png
Diff not rendered.
Binary file removed docs/n3/develop/network/assets/create-wallet.png
Diff not rendered.
Binary file removed docs/n3/develop/network/assets/privatechain_1.jpg
Diff not rendered.
Binary file removed docs/n3/develop/network/assets/privatechain_3.jpg
Diff not rendered.
2 changes: 1 addition & 1 deletion docs/n3/develop/network/testnet.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ If you are a developer, you can ask for Neo and GAS on the TestNet. You will nee

### Obtaining test coin automatically

You can request up to 500 GAS per day via [NGD faucet](https://neowish.ngd.network/neo3/).
You can request up to 50 GAS per day via [NGD faucet](https://neowish.ngd.network/neo3/).

### Applying for test coin from Neo website

Expand Down
Loading

0 comments on commit 7258b37

Please sign in to comment.