justitia

command module
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 9, 2019 License: Apache-2.0 Imports: 8 Imported by: 0

README

Justitia

Build Status codecov

Project Justitia builds a global community and a code library of the smart contract, relies on crowdfunding and crowd-developing on Justitia Chain to reach a broad consensus, and is committed to making code gradually become an "invisible law" in the virtual world, forming a trustworthy contract production mechanism. This project uses innovative Law Code technology and smart contract engineering theory to create a crowd-developed contract production DAC community DSiSc(DAC Swarm intelligence community of Smart contract), designing and implementing a new Justitia public blockchain to achieve community governance, and inspiring and bringing together global intelligence consensus to build a smart contract production factory.

Smart contracts will be important basic protocols with legal attributes in the digital society in the future and will become important foundations for the digital society in the future. We believe that smart contracts will be an important technological factor in the process of the blockchain revolution. However, smart contracts that are executed automatically as treaties and rules face many unprecedented challenges. Issues of letting smart contracts carry legal rules, store certificates, and automatically judge program execution will become a great challenge in the process of universal application of smart contracts.

Getting started

Here's how to set up justitia for local development.

  1. Fork the justitia repo on GitHub.

  2. Clone your fork locally, and fetch all dependencies:

     $ git clone git@github.com:your_name_here/justitia.git
     $ cd justitia
     $ make devenv
    
    • make devenv will get go-tools and dependencies, usually for the first time. most of the time, we use:

      $ make fetch-deps
      

      which only update dependencies, faster.

    • If you want to switch to a certain release tag, use env RELEASE:

      $ RELEASE=v0.6.0 make fetch-deps
      
  3. Create a branch for local development:

     $ git checkout -b name-of-your-bugfix-or-feature
    

    Now you can make your changes locally.

  4. When you're done making changes, check that your changes pass the tests:

     $ make test
    
  5. Copy config file to $HOME/.justitia, and make adjustments as you need:

     $ make -p $HOME/.justitia
     $ cp config/justitia.yaml $HOME/.justitia/
    
  6. Run justitia with the following command:

     $ go run main.go
    
  7. Commit your changes and push your branch to GitHub, We use Angular Commit Guidelines, Thanks for Angular good job.

     $ git add .
     $ git commit -m "Your detailed description of your changes."
     $ git push origin name-of-your-bugfix-or-feature
    
  8. Submit a pull request through the GitHub website.

Sub-projects

  • apigateway: A light-weight golang API Gateway implement.
  • blockchain: Middleware of blockchain storage layer accessing.
  • blockstore: An implemention of ledger which support customization by config file.
  • craft: Define common types and structures which used frequently.
  • crypto-suite: Crypto Suite.
  • evm-NG: Next Generation Contract VM from EVM.
  • galaxy: Advanced distributed consensus framework support pluggable algorithms.
  • gossipswitch: A Gossip switch implementation.
  • producer: Implement of producer which is responsible for producing block.
  • statedb-NG: A Next Generation StateDB Implementation.
  • txpool: A high-performance blockchain transaction pool.
  • validator: A high-speed validator verify transaction and block.
  • wallet: A high-security wallet implemention.
  • [p2p]

Releases

Licensing

Justitia is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
Package compiler wraps the Solidity compiler executable (solc).
Package compiler wraps the Solidity compiler executable (solc).
test

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL