Skip to content
Sprouts Official Development Tree
Branch: master
Clone or download
Pull request Compare This branch is 18 commits ahead, 142 commits behind peercoin:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
doc initial Jun 18, 2018
src Fix a typo Nov 24, 2018
.gitattributes Build identification strings Apr 10, 2012
COPYING initial Jun 18, 2018
INSTALL initial Jun 18, 2018 initial Jun 18, 2018 initial Jun 18, 2018 initial Jun 18, 2018
pkg.m4 merge of automake tools Nov 8, 2017

Sprouts Official Development Repo

Build Status

What is Sprouts?

Sprouts is a Sprouts network-compatible, community-developed wallet client.

The project has been designed to provide people with a stable, secure, and feature-rich alternative to the Sprouts reference wallet (

To help faciliate broad community cooperation, a number of trusted Sprouts/Peershares community leaders have write permissions to the project's codebase, allowing for decentralization and continuity. Community members, old and new, are encouraged to find ways to contribute to the success of the project. If you have experience with programming, product design, QA engineering, translation, or have a different set of skills that you want to bring to the project, your involvement is appreciated!

Sprouts Resources


Testing and code review is the bottleneck for development; we get more pull requests than we can review and test. Please be patient and help out, and remember this is a security-critical project where any mistake might cost people lots of money.

Automated Testing

Developers are strongly encouraged to write unit tests for new code, and to submit new unit tests for old code.

Unit tests can be compiled and run (assuming they weren't disabled in configure) with: make check

Every pull request is built for both Windows and Linux on a dedicated server, and unit and sanity tests are automatically run. The binaries produced may be used for manual QA testing — a link to them will appear in a comment on the pull request posted by BitcoinPullTester. See for the build/test scripts.

Manual Quality Assurance (QA) Testing

Large changes should have a test plan, and should be tested by somebody other than the developer who wrote the code.

  • Developers work in their own forks, then submit pull requests when they think their feature or bug fix is ready.
  • If it is a simple/trivial/non-controversial change, then one of the development team members simply pulls it.
  • The patch will be accepted if there is broad consensus that it is a good thing. Developers should expect to rework and resubmit patches if they don't match the project's coding conventions (see coding.txt) or are controversial.
  • From time to time a pull request will become outdated. If this occurs, and the pull is no longer automatically mergeable; a comment on the pull will be used to issue a warning of closure. Pull requests closed in this manner will have their corresponding issue labeled 'stagnant'.


develop (all pull requests should go here)

The develop branch is used by developers to merge their newly implemented features to. Pull requests should always be made to this branch (except for critical fixes), and could possibly break the code. The develop branch is therefore unstable and not guaranteed to work on any system.

master (only updated by group members)

The master branch get's updates from tested states of the develop branch. Therefore, the master branch should contain functional but experimental code.

release-* (the official releases)

The release branch is identified by it's major and minor version number e.g. release-0.6. The official release tags are always made on a release branch. Release branches will typically branch from or merge tested code from the master branch to freeze the code for release. Only critical patches can be applied through pull requests directly on this branch, all non critical features should follow the standard path through develop -> master -> release-*

You can’t perform that action at this time.