/go-genesis

A blockchain platform with a simplified programming language. 85% of all tokens will be distributed for free among GitHub users.

Primary LanguageGoMIT LicenseMIT


Throughput Graph

PRs Welcome Go Report Card Build Status Documentation API Reference Gitter

EN | CN | ES | RU

Contents

Introduction

Genesis is an open-source blockchain platform, the basis of which was laid in 2011 by programmer Oleg Strelenko. The platform's code was written completely from the ground up. Currently, there is a team of over 15 top-tier software developers working on the project. We can't run an ICO for the concept of Genesis the way that we like, that's why we decided to give away 85% of all tokens to a maximum number of programmers, so that with the help of the community Genesis becomes the best blockchain platform in the world.

Why is Genesis Unique?

  • In Genesis you can create your own blockchain ecosystem with customized rules. In essence, you can create your own "Ethereum", which can easily interact and communicate with your neighbor's "Ethereum" (another ecosystem on Genesis).
  • Developing applications on the Genesis platform is easy and fun. Mastering the platform's programming languages – Simvolio and Protypo - will take you around just four hours.
  • You'll be able to immediately upload your newly developed applications on Simvolio and Protypo directly to your mobile device running IOS or Android. You can do this using our application, which is soon to be available from Appstore and Google Play. Or you can upload your version after making some changes to our source codes.
  • All of the platform's parameters (even the consensus algorithm!) are fully customizable, and can be changed by community voting or by any other algorithms.

Get Your Tokens, GitHub User!

To protect the platform from attacks, Genesis (just as other public blockchain platforms) charges payments in GEN tokens for use of the network resources. The platform's genesis block will emit 100 million tokens and 85% (85m GEN) will be distributed among 850 thousand GitHub users, whose accounts were created more than a year ago (to protect from bots). We choose this way of token distribution, because there are over 24 million GitHub users, and virtually all of them are software developers.

As a result, around 850 thousand programmers will take full control over the blockchain platform and will be able to start building a new world with new rules.

How Genesis Works

Develop your applications using Simvolio. Simvolio is a С-like programming language used for creating contracts and which is compiled to byte code. It has a minimum required number of program control commands and predefined functions.


Create interfaces using Protypo. Protypo is a language for creating frontend pages. It is in essence a template engine which transforms a sequence of functions with parameters into a tree structure with elements, which can be then used for the front-end.


Establish rights for changing the code of contracts/interfaces and data in registers

Post your blockchain application on Google Play or Appstore.
https://github.com/GenesisKernel/genesis-reactnative


Quick Start

https://github.com/GenesisKernel/quick-start

Deploy an instance on macos:

bash manage.sh install 3 (creates and launches 3 local nodes)

Deploy an instance on linux:

bash manage.sh install 3 (creates and launches 3 local nodes)

Deploy an instance on windows:
https://github.com/GenesisKernel/quick-start-win/releases

win_install.exe

Console Blockexplorer

bash manage.sh db-shell 1
select id, time, node_position, key_id, tx from block_chain ORDER BY ID DESC LIMIT 20;

List of block-generating nodes:

select value from system_parameters where name='full_nodes';

The web version of the Blockexplorer will be available soon.

Plans

We believe that our code can be improved, that is why we are committed to further enhancing its quality and performance.

Testnet

[date to be announced]

Mainnet

[date to be announced]

Participation in Development

Please, read the CONTRIBUTING.md to get all the detailed information about sending Pull Requests.

Documentation

Please, study and expand our documentation

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Developers

See also the list of contributors who participated in this project.
Join the Genesis team!

License

This project is licensed under the MIT License - see the LICENSE file for details


Back to top