Community Contributions

We appreciate your interest in contributing to the EOSIO platform! We always welcome contributions from our community to make our code and docs better. You can contribute to EOSIO in the following ways:

Contribute to EOSIO Developer Portal Docs

The EOSIO documentation is written in Markdown. You can either submit a Pull Request for quick edits or file a new docs issue. For Markdown syntax usage, see the Markdown Syntax Documentation.

Quick Edits

Quick edits allow for faster reporting of minor content issues from typographical errors to omissions.

Most of the pages on the EOSIO developer portal provide an Edit link which redirects you to the source file on Github. If you don't see the Edit button on a given page, it means that specific page is not available to be changed.

To suggest a quick edit:

  1. Go to the specific page where you have identified an editorial need and click the Edit icon at the upper right of the page.

Quick Edit Icon

  1. Fork the repository to suggest changes. Click Fork this repository.

Fork the Repository

If you are not signed in to your Github account, it will redirect you to the Github login page. Sign in with your username and password to continue. If you are new to Github, create a new account.

  1. Make the suggested changes in the web editor using Markdown syntax. Click the Preview changes tab to see the preview of the content.
  2. After suggesting your changes, scroll down to the bottom on the page. Enter a title and a description of the changes you made and click Propose file change.
  3. Create a Pull Request by entering a title and a description. Click Create pull request to submit your suggestion to us.

If you are new to Github, see About Pull Requests for more information.

Congrats! You have submitted your contribution. Our team will review your pull request and merge it if it's a valid change.

Filing a Docs Issue

Filing an issue in a docs repository means reporting a documentation bug in the form of a Github issue.

To file a new issue:

  1. Go to the specific page where you have identified an area of improvement and click Request Changes at the top right of the page. New Issue Icon
  2. You will be directed to the Issues tab of the specific repository with an editable Issue form.

    New Issue Form

If you are not signed in to your Github account, it will redirect you to the Github login page. Sign in with your username and password to continue. If you do not have a Github account, create a new account.

  1. Enter the issue title and describe the issue with a proposed solution if you have using Markdown syntax.

If you are filing an issue for the first time, review the contributing guidelines of the repository.

Contribution Guidelines

  1. Click Submit new issue to submit the issue to the repository.

Contribute to EOSIO Community and Code

The following are different ways you can get involved with the EOSIO developers community and EOSIO repositories. You can find repositories to contribute to in software manuals and on the EOSIO Organization on GitHub.

For more information about the contribution guidelines of a particular repository, look for the "Contributing" link in the right-hand sidebar of the documentation.

Contributing link location

Developers Community Involvement

EOSIO Stack Exchange

Engage the EOSIO developer community over EOSIO Stack Exchange. You can ask a question related to EOSIO or answer questions and share your EOSIO knowledge with the community.

EOSIO Developer Telegram

Instantly engage the EOSIO developer community over EOSIO Telegram instant messenger. Get involved by sharing your expertise in EOSIO development discussions, sharing community tools and projects that can assist EOSIO developers, and more.

Get Involved with EOSIO Code

EOSIO is a large open source project with over 500 repositories for its stack and core components. You can visit the repositories in the EOSIO Organization on Github and start contributing to the code base.

There are many ways you can contribute to EOSIO code. You can report an issue, submit a pull request, and review pull requests.

Reporting an Issue

If you're about to raise an issue because you think you've found a problem with the stack, or you'd like to make a request for a new feature in the codebase, or any other reason, please read this first.

The GitHub issue tracker is the preferred channel for bug reports, feature requests, and submitting pull requests, but please respect the following restrictions:

  • Please search for existing issues. Help us keep duplicate issues to a minimum by checking to see if someone has already reported your problem or requested your idea.
  • Please be civil. Keep the discussion on topic and respect the opinions of others. See our Code of Conduct.

Bug Reports

A bug is a demonstrable problem that is caused by the code in the repository and can be reported in the form of a new issue.

Guidelines for bug reports:

  1. Use the GitHub issue search — check if the issue has already been reported.
  2. Check if the issue has been fixed — look for closed issues in the current milestone or try to reproduce it using the latest develop branch.

A good bug report or a new issue shouldn't leave others needing to chase you up for more information. Be sure to include the details of your environment and relevant tests that demonstrate the failure.

Feature Requests

Feature requests are welcome. Before you submit one be sure to have:

  1. Use the GitHub search and check the feature hasn't already been requested.
  2. Take a moment to think about whether your idea fits with the scope and aims of the project.
  3. Remember, it's up to you to make a strong case to convince the project's leaders of the merits of this feature. Please provide as much detail and context as possible, this means explaining the use case and why it is likely to be common.

Code of Conduct

While contributing, please be respectful and constructive, so that participation in our project is a positive experience for everyone.

Examples of behavior that contributes to creating a positive environment include:

  • Using welcoming and inclusive language
  • Being respectful of differing viewpoints and experiences
  • Gracefully accepting constructive criticism
  • Focusing on what is best for the community
  • Showing empathy towards other community members

Examples of unacceptable behavior include:

  • The use of sexualized language or imagery and unwelcome sexual attention or advances
  • Trolling, insulting/derogatory comments, and personal or political attacks
  • Public or private harassment
  • Publishing others’ private information, such as a physical or electronic address, without explicit permission
  • Other conduct which could reasonably be considered inappropriate in a professional setting

Contributor License & Acknowledgments

Whenever you make a contribution to this project, you license your contribution under the same terms as set out in LICENSE, and you represent and warrant that you have the right to license your contribution under those terms. Whenever you make a contribution to this project, you also certify in the terms of the Developer’s Certificate of Origin set out below:

Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.