Make your first Coconut contribution.

Choose the repository that fits your skills, get its documented development workflow running, and propose one focused improvement.

  1. 01Choose
  2. 02Run
  3. 03Improve
  4. 04Propose
01

Start where your experience is useful.

These links take you directly to the working materials. Project philosophy and architecture remain on About.

FLUTTER / ONLINE

coconut_wallet

Flutter wallet features, networking, hardware-wallet bridges, and localization

FLUTTER / OFFLINE

coconut_vault

Air-gapped signing, offline key handling, device security, and transaction review

02

Get to a documented local run.

Begin with Git, a GitHub account, and the toolchain listed in the repository README. Wallet currently documents additional Go, Rust, protoc, native-bridge, and environment-file requirements.

coconut_lib

Generate mocks when needed, then run the documented unit-test suite.

git clone https://github.com/noncelab/coconut_lib.git
cd coconut_lib
dart pub get
dart test -t unit

coconut_wallet

Use Regtest for development. Read the native-bridge and environment setup before running the app.

git clone https://github.com/noncelab/coconut_wallet.git
cd coconut_wallet
flutter pub get
make ready
flutter run --flavor regtest

coconut_vault

Run on a Regtest flavor. Device connectivity checks are part of the Vault development experience.

git clone https://github.com/noncelab/coconut_vault.git
cd coconut_vault
flutter pub get
dart run build_runner clean && dart run build_runner build --delete-conflicting-outputs && dart run slang
flutter run --flavor regtest

coconut_design_system

The current README documents package use and the pull-request flow. Check it before choosing a local verification command.

git clone https://github.com/noncelab/coconut_design_system.git
cd coconut_design_system
flutter pub get

Commands reflect the public repository documentation checked on August 12, 2026. The README remains the source of truth.

03

Choose one focused first task.

A useful contribution does not have to be a large feature. Start with work that is easy to explain, verify, and review.

  • Reproduce and document a bug
  • Add or strengthen a test
  • Clarify setup documentation
  • Improve a translation
  • Review accessibility
  • Fix a focused issue
Browse all Coconut issues
04

Move from issue to review in six steps.

  1. 01

    Check

    Search existing issues and pull requests before starting.

  2. 02

    Discuss

    Share your intent on the issue. Discuss large or structural changes before implementation.

  3. 03

    Branch

    Fork the repository and create a branch scoped to one change.

  4. 04

    Build

    Implement the change and add the smallest sufficient verification.

  5. 05

    Verify

    Run the repository's documented checks and review the final diff.

  6. 06

    Propose

    Open a pull request that explains the reason, scope, and verification.

05

Before opening a pull request.

  • The change has one clear purpose
  • Relevant checks and tests pass
  • No unrelated files are included
  • The pull request explains how the change was verified
  • Security and compatibility effects were considered
  • The related issue is linked when one exists

Report vulnerabilities privately.

Do not open a public issue for a potential vulnerability involving private keys, signing, transaction validation, or user funds. Contact the maintainers privately first.

Email hello@noncelab.com

When you get stuck, ask in the right place.

Use Issues for reproducible bugs and scoped proposals. Use Discord for repository choice, setup questions, and finding a practical starting point.