Skip to content

cmg-york/cnsim-engine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

296 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CNSim-Engine Logo

Consensus Network Simulator - Simulation Engine

CNSim-Engine is the object-oriented framework that lies at the core of CNSim, a toolset for simulating blockchain consensus networks. The engine offers a set of abstractions, objects, and routines for quickly developing and running event-driven simulators of individual consensus networks. As such it is meant to be used as a library of instantiating projects to use in order to analyze specific protocols.

Installation

At this stage, the easiest way to instantiate CNSim-Engine assets is through installation to your local Maven repository:

  1. Have the latest versions of maven, git and Java (version used: 21) installed in your system.
  2. In the cnsim-engine directory just do:
mvn install

this will compile and install the library to your local Maven repo.

  1. In your instantiating code then (e.g. cnsim-bitcoin) just add this to your pom.xml
<dependencies>
  ...
  <dependency>
    <groupId>ca.yorku.cmg</groupId>
    <artifactId>cnsim-engine</artifactId>
    <version>0.0.2-SNAPSHOT</version>
  </dependency>
</dependencies>

Ensure that the version is the same as in the pom.xml at the root of this repository.

Documentation

  • Markdown documentation viewable on GitHub can be found under src/site/markdown/documentation.
  • Complete html documents including JavaDocs can be found under docs/index.html - repo needs to be cloned for these to be viewed locally.

Clarification on License

LGPL license adoption is intended to allow reuse of the framework for instantiating both proprietary and open-source (of any license) consensus protocol simulators. You can, for example create a proprietary tool for simulating a popular consensus protocol using this library a derivative of which you can maintain and distribute.

However, while the instantiating code per se can be proprietary, the derivatives and re-distributions of the CNSim-Engine assets themselves need to follow the open source GPL provisions, chiefly that the code is open and under the same license.

The LICENSE text contains the authoritative licensing information.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages