Skip to content

Source Code Contributions


Initial Preparation

A good first step is to read the Code Contribution Guidelines documentation to get a good understanding of the policies used by the project. That document is primarily focused on the Go codebase but it is still a good start.

The following examples will be split into two sections, one for the Go projects (drep-chain, etc), and one for projects that do not use Go (dcrdocs, etc). In all cases, be sure to check out the README.md in each project if you need help setting the particular project up.


Go

For projects using Go, ensure you have either the latest Go release or the one prior installed. All Go code changes for Drep must be compliant with the latest version of Go and the one prior to it.

Below is an example procedure for drep.

One time setup

  • Fork dcrd on GitHub
  • Run the following commands to obtain drep, all dependencies, and install it:
$ mkdir -p $GOPATH/src/github.com/drep-project/
$ git clone https://github.com/drep-project/drep-chain.git $GOPATH/src/github.com/drep-project/drep-chain
$ cd $GOPATH/src/github.com/drep-project/drep-chain
$ go mod trdy
$ go install . ./cmd/...

Other projects

For projects not written in Go, the initial setup will depend on the project. I will use drepdocs as an example here, but the basic steps are the same for any of the projects. Specific setup can be seen in the project README.md (for example how to install mkdocs to work on drepdocs or electron for brower).

One time setup

  • Fork drepdocs on GitHub
  • Run the following commands to obtain drepdocs:
$ mkdir -p code/drepdocs
$ cd code/drepdocs
$ git clone https://github.com/drep-project/drepdocs
$ cd drepdocs