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.
If you have a new design for a blockchain system, there are few options available in regards with an implementation:
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.
Please join maillist at https://groups.io/g/scorex-dev. There is tutorial in progress, available at https://github.com/ScorexFoundation/ScorexTutorial.
There are two examples of blockchain systems built with Scorex:
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:
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!
To publish release version to Sonatype:
vX.Y.Z
(used by sbt-dynver
to set version
in build.sbt
);release.yml
workflow and publishes release version to Sonatype;