Git Product home page Git Product logo

scorex's Introduction

Scorex 2 - The modular blockchain framework Build Status Coverage Status

Scorex and Scorex 2

Scorex 2 is modular blockchain framework is Scala language which allows for free and limitless experimentation with a wide variety of designs.

It is a complete rewrite of Scorex framework, which can be found at https://github.com/input-output-hk/Scorex.

Motivation

If you have a new design for a blockchain system, there are few options available in regards with an implementation:

  • you can fork codebase of a Bitcoin or Ethereum client. However, such clients are optimized towards concrete protocol, thus implementing something different would be a cumbersome task.
  • there are some modular frameworks, such as Scorex, where you can change consensus layer, or transactional layer, or both. Still, these modules have concrete interfaces, so for many designs more low-level and abstract approach was needed.

We have read a lot of research papers to make Scorex 2 supporting their implementations. Its abstract core allows for implementing a broad range of systems, including ones with multiple types of blocks and non-linear history.

Features

  • Compact, functional code
  • Modular design with fine granularity
  • Scala language
  • Asynchronous networking layer on top of TCP
  • JSON API
  • Cryptographic primitives externalized into separate scrypto framework
  • Some examples provided, including one working in production

Documentation and Communication.

Please join maillist at https://groups.io/g/scorex-dev. There is tutorial in progress, available at https://github.com/ScorexFoundation/ScorexTutorial.

Examples

There are two examples of blockchain systems built with Scorex:

Development Plans

Final 1.0 release of Scorex 2 is not done but near. Currently we're polishing and auditing the codebase towards the release. Then we will consider further plans, possibly including:

  • Improved networking layer
  • Support for Scala 3
  • More examples, possibly including non-linear systems (such as DAGs)

Contributions

Contributions are welcome! Please take a look into issues. Testing codebase is still not perfect at the moment, so writing a test is not just good for start, but useful for the product as well.

New examples would be very helpful as well!

scorex's People

Contributors

kushti avatar catena2w avatar ceilican avatar oskin1 avatar tolsi avatar mike-aksarin avatar terjokhin avatar victormikheev avatar greenhat avatar ezequielpostan avatar mayank0403 avatar knizhnik avatar tharindudg avatar aslesarenko avatar scasplte2 avatar dkaidalov avatar anatoly-shamov avatar semyonoskin avatar alanverbner avatar piterden avatar tdroxler avatar

Watchers

James Cloos 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.