NEO Blockchain Quick Start Guide for .NET Developers
neo-csharpcoe project is an "umbrella" project for several initiatives related to providing tools and libraries (code), frameworks, how-to documentation, and best practices for enterprise application development using .NET/C#, C#.NEO and the NEO Blockchain software platform.
neo-csharpcoe is an independent, free, open source project that is 100% community-supported by people like yourself through your contributions of time, energy, passion, promotion, and donations.
To learn more about contributing to the
neo-csharpcoe, click here.
The purpose of this document is to enable .NET developers who are brand new to NEO Blockchain technology to create a useful NEO development environment and get it up and running in as little time as possible.
This document is specifically targeted at .NET developers and architects.
In addition, when the first version of the document was written (February 2018), you will also need to have an early adopters mind set. It's the early days. You'll be downloading the code for most of the developer tools (aside from Visual Studio) and compiling them yourself. It may not always be fun but I promise it will certainly be rewarding in the end.
- Ensure you have a working and properly configured NEO development environment up and running in as short a time as possible
- Enable to create, deploy and test your first NEO smart contract written in C# (using the HelloWorld sample)
- Provide reliable documentation: timely, accurate, visual, and complete
- Save as much of a person's time as possible
- Use open source software whenever possible
- Need in the NEO .NET developer community to have concise and easy-to-follow documentation to enable people to get up to speed developing NEO smart contracts in as short a time as possible
- Pre-requisites and Recommendations
- Download and install Visual Studio 2017 Community Edition integrated development environment (IDE)
- Download and unpack NEO developer tool projects (source)
- Coffee time: Wait for previous activities to complete
- Install NeoContractPlugin Visual Studio extension
- Build and test NEO developer tool projects (from source)
- Download, install, and test Docker platform
- Download and test NEO privatenet Docker container
- Create and compile HelloWorld smart contract sample
- Deploy and test the HelloWorld smart contract
- Quick Cycle Edit-Compile-Debugging of C#.NEO Smart Contracts
- Appendix A - Checklist
- Appendix B - Roadmap
- Appendix C - Reset NEO privatenet Environment: Container, Wallets, and Clients
2 languages: English [Complete] and Turkish [WIP]
11 major activities comprising 130 documented tasks (approximately)
140 screen shots (approximately)
Figure 0.1. Quick Start Image Light Table
7 batch files
2 JSON configuration files
1 C# code snippet
- [NEOTUTORIAL] NEO Project, NEO smart contract tutorial from http://docs.neo.org/en-us/sc/tutorial.html
Other Good Resources
- [NEOPYTHONTUTORIAL] Nick Fujita, NEO Smart Contracts Tutorial: helloWorld (Python) from https://steemit.com/neo/@z0yo/neo-smart-contracts-tutorial-helloworld
Who is Michael Herman?
Michael Herman (Toronto) (photo)
Michael Herman is a independent developer and writer who contributes to several NEO Blockchain projects including:
- NEO developer tool suite (neo-debugger and neo-gui-developer projects)
- mwherman2000/neo-persistableclasses project – home of the NEO Persistible Class Framework (NPC) for efficient object-oriented smart contract development using C#.NEO
- mwherman2000/dotnetquickstart project – home of the NEO Blockchain Quick Start Guide for .NET Developers.
Michael is also the founder of the NEO Blockchain C# Center of Excellence as well as the first Canadian NEO Blockchain Meetup group (NEO Blockchain Toronto). He has helped bootstrap several additional Meetups worldwide including NEO Blockchain Vancouver, NEO Blockchain Cancun, and NEO Blockchain Turkey.
- E: mailto:email@example.com
- F: https://www.facebook.com/neotoronto/
- G: https://github.com/mwherman2000/neo-windocs
- M: https://www.meetup.com/NEO-Blockchain-Toronto
- T: https://www.twitter.com/neotoronto
- B: http://www.hyperonomy.com
- L: https://www.linkedin.com/in/mwherman/