Skip to content
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

Readme update #1341

Merged
merged 9 commits into from
Dec 9, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added .github/images/discord-logo.png
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 .github/images/medium-logo.png
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 .github/images/nnt-logo.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 .github/images/reddit-logo.png
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 .github/images/telegram-logo.png
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 .github/images/twitter-logo.png
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 .github/images/we-chat-logo.png
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 .github/images/weibo-logo.png
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 .github/images/youtube-logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
212 changes: 121 additions & 91 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,85 @@
<p align="center">
<img
src="https://neo-cdn.azureedge.net/images/neo_logo.svg"
width="250px">
<a href="https://neo.org/">
<img
src="https://neo3.azureedge.net/images/logo%20files-dark.svg"
width="250px" alt="neo-logo">
</a>
</p>

<h3 align="center">Neo Blockchain</h3>

<p align="center">
A modern distributed network for the Smart Economy.
<br>
<a href="https://docs.neo.org/docs/en-us/index.html"><strong>Documentation »</strong></a>
<br>
<br>
<a href="https://github.com/neo-project/neo"><strong>Neo</strong></a>
·
<a href="https://github.com/neo-project/neo-vm">Neo VM</a>
·
<a href="https://github.com/neo-project/neo-modules">Neo Modules</a>
·
<a href="https://github.com/neo-project/neo-devpack-dotnet">Neo DevPack</a>
·
<a href="https://github.com/neo-project/neo-node">Neo Node</a>
</p>
<p align="center">
<a href="https://twitter.com/neo_blockchain">
<img
src=".github/images/twitter-logo.png"
width="25px">
</a>
&nbsp;
<a href="https://medium.com/neo-smart-economy">
<img
src=".github/images/medium-logo.png"
width="23px">
</a>
&nbsp;
<a href="https://neonewstoday.com">
<img
src=".github/images/nnt-logo.jpg"
width="23px">
</a>
&nbsp;
<a href="https://t.me/NEO_EN">
<img
src=".github/images/telegram-logo.png"
width="24px" >
</a>
&nbsp;
<a href="https://www.reddit.com/r/NEO/">
<img
src=".github/images/reddit-logo.png"
width="24px">
</a>
&nbsp;
<a href="https://discord.io/neo">
<img
src=".github/images/discord-logo.png"
width="25px">
</a>
&nbsp;
<a href="https://www.youtube.com/channel/UCl1AwEDN0w5lTmfJEMsY5Vw/videos">
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should rename the youtube channel.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@shargon do you have the correct url?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, I think that there are no other one, but we should change it

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, I think that there are no other one, but we should change it

This is the official youtube channel so far. Do you think that we should have more development related videos to be linked?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I know but I think that we have enough subscriptions to be able to choose a name, and it's more user friendly.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't get you well. The youtube channel is named like the other official social media channel, called "Neo Smart Economy". Do you think we should change the name? Or is it because now it's linked to the video list instead of the home page?

Copy link
Member

@shargon shargon Dec 9, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, but we don't have an url like this https://youtube.com/channel/neo-smart-economy

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done. You can replace the youtube link with: https://www.youtube.com/neosmarteconomy @lock9

<img
src=".github/images/youtube-logo.png"
width="32px">
</a>
&nbsp;
<!--How to get a link? -->
<a href="https://neo.org/">
<img
src=".github/images/we-chat-logo.png"
width="25px">
</a>
&nbsp;
<a href="https://weibo.com/neosmarteconomy">
<img
src=".github/images/weibo-logo.png"
width="28px">
</a>
</p>
<p align="center">
<a href="https://travis-ci.org/neo-project/neo">
<img src="https://travis-ci.org/neo-project/neo.svg?branch=master" alt="Current TravisCI build status.">
Expand All @@ -19,110 +95,64 @@
</a>
</p>

NEO 3.0 (under development): A distributed network for the Smart Economy
================

NEO uses digital identity and blockchain technology to digitize assets and leverages smart contracts for autonomously managed digital assets to create a "smart economy" within a decentralized network.

To learn more about NEO, please read the [White Paper](https://docs.neo.org/en-us/whitepaper.html)|[白皮书](https://docs.neo.org/zh-cn/whitepaper.html).

NEO 2.x: Reference template
================

NEO adopts a model of continuous improvement and evolution.
We believe that the research and development of blockchain technology will be kept in continuous transformation for the next years.
From 2017 until the middle of 2020 (estimated), NEO 2.x will still be supported and the compatibility of new packages will be maintained.

A link to the essential C# reference implementation can be seen below:

* [neo](https://github.com/neo-project/neo/tree/master-2.x): core implementation (branch `master-2.x`)
* [neo-vm](https://github.com/neo-project/neo-vm/tree/master-2.x): virtual machine (branch `master-2.x`)
* [neo-cli](https://github.com/neo-project/neo-cli/tree/master-2.x): command-line interface (branch `master-2.x`)
* [neo-plugins](https://github.com/neo-project/neo-plugins/tree/master-2.x): plugins (branch `master-2.x`)
* [neo-devpack-dotnet](https://github.com/neo-project/neo-devpack-dotnet/tree/master-2.x): NeoContract compiler and development pack for .NET (branch `master-2.x`)

NEO 1.x was known as Antshares and the roots of the code can be found historically in this current repository.

Supported Platforms
--------

We already support the following platforms:

* CentOS 7
* Docker
* macOS 10 +
* Red Hat Enterprise Linux 7.0 +
* Ubuntu 14.04, Ubuntu 14.10, Ubuntu 15.04, Ubuntu 15.10, Ubuntu 16.04, Ubuntu 16.10
* Windows 7 SP1 +, Windows Server 2008 R2 +

We will support the following platforms in the future:

* Debian
* Fedora
* FreeBSD
* Linux Mint
* OpenSUSE
* Oracle Linux

Development
--------

To start building peer applications for NEO on Windows, you need to download [Visual Studio 2017](https://www.visualstudio.com/products/visual-studio-community-vs), install the [.NET Framework 4.7 Developer Pack](https://www.microsoft.com/en-us/download/details.aspx?id=55168) and the [.NET Core SDK](https://www.microsoft.com/net/core).
## Table of Contents
1. [Overview](#overview)
2. [Project structure](#project-structure)
3. [Related projects](#related-projects)
4. [Opening a new issue](#opening-a-new-issue)
5. [Bounty program](#bounty-program)
6. [License](#license)

If you need to develop on Linux or macOS, just install the [.NET Core SDK](https://www.microsoft.com/net/core).
## Overview
This repository contain main classes of the
[Neo](https://www.neo.org) blockchain.
Visit the [documentation](https://docs.neo.org/docs/en-us/index.html) to get started.

To install Neo SDK to your project, run the following command in the [Package Manager Console](https://docs.nuget.org/ndocs/tools/package-manager-console):

```
PM> Install-Package Neo
```
*Note: This is Neo 3 branch, currently under development. For the current stable version, please [click here](https://github.com/neo-project/neo/tree/master-2.x)*

For more information about how to build DAPPs for NEO, please read the [documentation](http://docs.neo.org/en-us/sc/introduction.html)|[文档](http://docs.neo.org/zh-cn/sc/introduction.html).

Daily builds
--------

If you want to use the [latest daily build](https://www.myget.org/feed/neo/package/nuget/Neo) then you need to add a NuGet.Config to your app with the following content:
## Project structure
An overview of the project folders can be seen below.

```xml
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<clear />
<add key="MyGet-neo" value="https://www.myget.org/F/neo/api/v3/index.json" />
<add key="NuGet.org" value="https://api.nuget.org/v3/index.json" />
</packageSources>
</configuration>
```
|Folder|Content|
|---|---|
|Consensus| Classes used in the dBFT consensus algorithm, including the `ConsensusService` actor.|
|Cryptography|General cryptography classes including ECC implementation.|
|IO|Data structures used for caching and collection interaction.|
|Ledger|Classes responsible for the state control, including the `MemoryPool` and `Blockchain` classes.|
|Network|Peer-to-peer protocol implementation classes.|
|Persistence|Classes used to allow other classes to access application state.|
|Plugins|Interfaces used to extend Neo, including the storage interface.|
|SmartContract|Native contracts, `ApplicationEngine`, `InteropService` and other smart-contract related classes.|
|VM|Helper methods used to interact with the VM.|
|Wallet|Wallet and account implementation. |

*NOTE: This NuGet.Config should be with your application unless you want nightly packages to potentially start being restored for other apps on the machine.*

How to Contribute
--------
## Related projects
Code references are provided for all platform building blocks. That includes the base library, the VM, a command line application and the compiler.

You can contribute to NEO with [issues](https://github.com/neo-project/neo/issues) and [PRs](https://github.com/neo-project/neo/pulls). Simply filing issues for problems you encounter is a great way to contribute. Contributing implementations is greatly appreciated.
* [**neo:**](https://github.com/neo-project/neo/tree/) Neo core library, contains base classes, including ledger, p2p and IO modules.
shargon marked this conversation as resolved.
Show resolved Hide resolved

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The link is wrong.

* [neo-vm:](https://github.com/neo-project/neo-vm/) Neo Virtual Machine is a decoupled VM that Neo uses to execute its scripts. It also uses the `InteropService` layer to extend its functionalities.
* [neo-node:](https://github.com/neo-project/neo-node/) Executable version of the Neo library, exposing features using a command line application or GUI.
* [neo-modules:](https://github.com/neo-project/neo-modules/) Neo modules include additional tools and plugins to be used with Neo.
* [neo-devpack-dotnet:](https://github.com/neo-project/neo-devpack-dotnet/) These are the official tools used to convert a C# smart-contract into a *neo executable file*.

We use and recommend the following workflow:
## Opening a new issue
Please feel free to create new issues to suggest features or ask questions.

1. Create an issue for your work.
* You can skip this step for trivial changes.
* Reuse an existing issue on the topic, if there is one.
* Clearly state that you are going to take on implementing it, if that's the case. You can request that the issue be assigned to you. Note: The issue filer and the implementer don't have to be the same person.
1. Create a personal fork of the repository on GitHub (if you don't already have one).
1. Create a branch off of master(`git checkout -b mybranch`).
* Name the branch so that it clearly communicates your intentions, such as issue-123 or githubhandle-issue.
* Branches are useful since they isolate your changes from incoming changes from upstream. They also enable you to create multiple PRs from the same fork.
1. Make and commit your changes.
1. Add new tests corresponding to your change, if applicable.
1. Build the repository with your changes.
* Make sure that the builds are clean.
* Make sure that the tests are all passing, including your new tests.
1. Create a pull request (PR) against the upstream repository's master branch.
* Push your changes to your fork on GitHub.
- [Feature request](https://github.com/neo-project/neo/issues/new?assignees=&labels=discussion&template=feature-or-enhancement-request.md&title=)
- [Bug report](https://github.com/neo-project/neo/issues/new?assignees=&labels=&template=bug_report.md&title=)
- [Questions](https://github.com/neo-project/neo/issues/new?assignees=&labels=question&template=questions.md&title=)

Note: It is OK for your PR to include a large number of commits. Once your change is accepted, you will be asked to squash your commits into one or some appropriately small number of commits before your PR is merged.
If you found a security issue, please refer to our [security policy](https://github.com/neo-project/neo/security/policy).

License
------
## Bounty program
You can be rewarded by finding security issues. Please refer to our [bounty program page](https://neo.org/bounty) for more information.

## License
The NEO project is licensed under the [MIT license](LICENSE).