I am a Developer and I want to Contribute!

We Encourage Collaboration

As the saying goes:

“If you want to go fast, go alone. If you want to go far, go together.”
- African Proverb

We know that working together as a community is better for everyone. And thus, we encourage everyone in the space to work together to reach our goal of a decentralized world.

Developer Resources

Here are some of the links that any developer can look into:

Submit a New Token

Requirements:

  • Prepare image/logo requirements
  • Familiarize yourself with the folder strcture. This will give you a better understanding of where an asset image should be placed

Steps on how to add a new asset:

  1. Confirm that your images/logo meets the requirements.
  2. Proceed to https://github.com/trustwallet/assets
  3. Press on Fork in the top right corner, wait for process to complete
  4. Navigate to desire chain folder you want to add asset
  5. Prepare folder with image on your computer
  6. Simply drag and drop folder from step 5 to active window
  7. In Commit changes box:
  • Add files via upload add meaningfull comment what you adding to the repo
  • optional: In Add an optional extended description write a comment about upload
  • optional: adjust fork branch nam
  1. Click on Propose changes
  2. Press on Create pull request
  3. Once tests have completed and verified that your image follows all requirements, a maintainer will merge it. In 5-10 minutes your token will have the updated image instead of plain logo in Trust Wallet.

Add a New Coin or Blockchain

Integration Criteria

The Trust Wallet development team is always striving to add more blockchains that will be essential for developers and wallet users. We choose blockchains carefully that will have the biggest impact for our community.

In general:

  • The blockchain has launched mainnet and stably run at least 3 ~ 6 months without any major security incidents.
  • The blockchain has extensive public documentation and tools available for developers to use.
  • The native coin is listed in the top 30 coins on CoinMarketCap.
  • The project needs to provide API/JSON-RPC access to the node with a load balancing setup for private use, see detail requirements here.
  • The native coin is tradable on major exchanges.

After integrate into Trust Wallet, project should also provide timely support for any urgent matters.
If your project meets the above criteria, you can review the next steps in adding a coin or blockchain:
https://developer.trustwallet.com/wallet-core/newblockchain#overview

Connect your DApp

Here are the steps to add a new DApp:

  1. Upload DApp images into the repository. See sample path below.
    <subdomain>.<domain_name>.png e.g: https://app.compound.finance/ => app.compound.finance.png https://kyberswap.com/ => kyberswap.com.png
  2. Add backlinks to the website.
  3. Integrate deep linking
  4. Test dApp inside Trust Wallet on iOS and Android devices
  5. Gather all necessary details of the DApp. Fill up and submit form for review.

Contribute to the Staking Platform

Here is a process overview of how to participate in the Staking Platform

  • Create an Issue describing your implementation in trust platform

  • Implement the required staking data in blockatlas

    • GetValidators

    • GetDelegations

  • Implement the signing messages for all actions realted to satking in wallet-core. You have to adopt different strategies based on how staking is implemented in your blockchain:

    • Native: create the protobuf messages, implement the signing and add tests

    • On chain smart contract call: create the protobuf messages for the call and add tests

    • Off chain smart contract call: describe it with examples in your issue

  • Implement RPC endpoints to communicate with nodes in your blockchain in web-core project.

    • Add unit and integration tests for all calls
  • Create a validators list if necessary

  • Comment your issue with references to all required pull requests.