Coder Social home page Coder Social logo

awesome-smart-contracts's Introduction

Awesome Smart Contracts Awesome

Curated list of platforms to run Smart Contracts.

What is Smart Contract?

"New institutions, and new ways to formalize the relationships that make up these institutions, are now 
made possible by the digital revolution. I call these new contracts "smart", because they are far more 
functional than their inanimate paper-based ancestors. No use of artificial intelligence is implied. 
A smart contract is a set of promises, specified in digital form, including protocols within which the 
parties perform on these promises."

-Nick Szabo, 1996
Smart contracts are contracts whose terms are encoded in  computer language instead of legal language. 
Smart contracts can be executed by a computing network such as RSK, so that the terms of the contracts 
are automatically enforced by a protocol that all nodes in the network follow.

A smart contract can be fully autonomous if all the objects referred (such as currency, payments, 
obligations, property titles, assets, licenses) have a digital representation in the platform. 

Source: https://faq.rsk.co/en/main/

License

CC0

To the extent possible under law, Igor Korsakov has waived all copyright and related or neighboring rights to this work.

Contribute!

Share your knowledge. Contributing guide

Platforms list

Platform name Engine Contract language Live? Origin Inc. in Est. Pub. rel.
Bitcoin Bitcoin script Ivy-lang, Balzac Yes USA USA 2017.12 2017.12
BitShares ? ? Yes
Byteball Byteball JSON Yes RU 2016.12 2016.12
Cardano ? Plutus (Haskell inspired) no HK Switzerland 2015
Counterparty ? ? Yes
Corda ?
DFINITY EVM? Ethereum compatible (aka Solidity, Serpent, etc.) No
EOS EVM / eWASM C/C++ (compiles to WASM) no
Ethereum EVM Solidity Yes CA Switzerland 2014.04 2015.07
Ethereum Classic EVM Solidity Yes ^^^ no ^^^ ^^^
Exonum ? Rust. Java bindings TBD No UA Netherlands 2017.07
hyperledger Sandbox ? ?
Lisk N/A Javascript
Nem Offchiain ? ?
Neo NeoVM 1st batch: dotNet; 2nd: Java,Kotlin; 3rd: C,C++,GO,Py,JS (TBD) Yes China China 2014.06 2016.10
Neblio ? REST-API, Python,JS, .NET(C# & VB.NET), Objective-C, Java, Node.js, GO, PHP Yes USA USA 2017.01 2017.07
NXT ? ? Yes
OmniLayer ?
Qtum EVM Solidity Yes Singapore Singapore 2016 2017.09
quorum ? ? ?
Radix ? Scrypto (Based on JavaScript/TypeScript) Yes UK UK 2018
Rootstock EVM Solidity no Argentina Argentina 2015.11
Tezos ? Michelson no
Ubiq EVM Solidity Yes CA CA ? 2017.01
Universa ?
Urbit ? Hoon Yes
Waves ? NA Yes RU ? 2016 2016.11

Ethereum

Ethereum is a gold standard in smart contracts and has biggest capitalization among other platforms. Majority of token sales go on Ethereum platform, with recently standartized token format ERC-20.

Founded by son of russian expats in Canada Vitalik Buterin. Incorporated in Switzerland.

Docs:

Contract examples:

Ethereum Classic

Classic appeared as a fork of main Ethereum chain (right after famous DAO hack) by a community that disagreed to alter the blockchain to get back stolen funds. ETC is still in search of its place in smart contracts world. Some engineering changes are still going under the hood (like, changing the emission and difficulty retarget algo), and developer tools are being developed. No major token crowdsales were made yet, but the community is looking forward to it.

Not incorporated.

Neo

NEO (formerly Antshares) is a Chinese answer to Ethereum. Neo is a major player in SmartContracts world and often compared to Ethereum.

First batch of supported languages is ready for production use. Second is partially ready, and third is planned.

Docs:

Contract examples:

Ubiq

Ubiq functions as a fork of Ethereum codebase, with several adjustmens, fully compatible with EVM and Solidity.

Governed by Ubiq Technology Inc.

Urbit

WTF is dis

Contract examples:

Rootstock

Rootstock is a Bitcoin sidechain, adding Turing-complete language (enabling smart contracts) and ability to scale up to 20k transactions per second (eventually). Sidechain shall be secured by a merge-mining with regular Bitcoin pools.

Rootstock is very well received by community, and among all 2nd layer solutions for Bitcoin is considered to be one of the closest to completion.

Language used shall be Solidity, and RSK VM is fully compatible with Ethereum VM.

Docs:

Cardano

Cardano claims it is the first Blockchain to use a provably secure, proof of stake algorithm. Cardano is designed in separate layers, where the 1st layer (aka Settlement Layer; PoS blockchain) is already live (as of 2017.10), and internal currency (Ada) being added to exchanges.

Second (aka computational) layer will run smart contracts using a Haskell-inspired scripting language, called Plutus, and is scheduled to release in first quarter 2018.

Governed by The Cardano Foundation, IOHK and Emurgo.

Docs:

Contract examples:

Exonum

Exonum is an extensible open-source framework for creating blockchain applications. It is designed to allow you, your company or your government to build a tailor-cut private or permissioned blockchain.
Thus, there's no public Exonum network or traded Exonum tokens.

Exonum is developed and supported by the Bitfury Group.

Services are the main extension point for the Exonum framework. By itself, Exonum provides building 
blocks for creating blockchains; it does not come with any concrete transaction processing rules. 
This is where services come into play. If you want to create an instance of the Exonum blockchain, 
services are the way to go.
Endpoints defined by services fulfill the same role as smart contracts in other blockchain platforms. 
They define business logic of the blockchain, allow to retrieve data from the blockchain, and can be 
reused across different projects. Partial analogies for this execution model are endpoints of RESTful 
web services and stored procedures for DBMSs.

Docs:

Contract examples:

BitShares

BitShares 2.0 is the first application of Graphene technology.

Qtum

Qtum is a hybrid blockchain application platform. Qtumโ€™s core technology combines a fork of bitcoin core, an Account Abstraction Layer allowing for multiple Virtual Machines including the Ethereum Virtual Machine (EVM) and Proof-of-Stake consensus.

Qtum smart contracts aim to be compatible with existing Ethereum contracts.

Main selling points of Qtum is: lite mobile wallets that can execute smart contracts; compatibility with existing bitcoin infrastructure/tools (since Qtum forked off bitcoin, and aims to adopt most of bitcoin BIPs).

Qtum started in 2016, in 2017.03 Qtum had a crowdsale distributng their tokens. Main net launched on 2017.10.

Waves

Waves is a PoS blockchain specifically designed to issue tokens (and run ICOs). Some of the largest ICOs were run on Waves Platform. Users can also lease funds to miners o generate interest. There's also a decentralized exchange (DEX) with front-run protection, and gateways to common fiat currencies.

Smart contracts are planned (as stated on website), but not yet supported.

Docs:

Bitcoin

Ivy

Ivy: a smart contract language that compiles to Bitcoin Script

Docs:

Online tool:

Balzac

Balzac: an high-level language for writing transactions, verifying their correctness, and compiling them into actual Bitcoin transactions.

Docs:

Online tool:

Neblio

The Neblio network has an assortment of services that deploy blockchain technology. Simply put, it is an API suite, hosting platform, consultancy service provider, Node deployment base as well as a private blockchain DApps.

Neblio uses RESTful APIs to give maximum compatibility to almost any language.

Docs:

awesome-smart-contracts's People

Contributors

algys avatar bonustrack avatar eliooses avatar geekstuffnz avatar h4x3rotab avatar jamied1 avatar natzei avatar overtorment avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.