As an ICON community member, especially if you’re a non-developer, submitting bug reports and suggestions is one of the most valuable contributions you can make. In this article, you’ll learn how to submit issues directly to ICON-related GitHub repositories.
What is GitHub?
ICON is an open source blockchain project, which means its codebase can be viewed, worked on, and improved by anyone in the community. ICON’s codebase is hosted on GitHub, an online collaboration platform where users can contribute code, engage in discussions, submit bug reports, view historical code changes, and more.
On GitHub, ICON’s codebase is organized into different repositories, or repos. You can think of a repo as a project-specific storage area for code and related discussions. For example, the codebases for Goloop and the ICON Tracker are stored in different repos.
What is GitHub Issues?
GitHub Issues is a feature that’s built into GitHub repos. As its name implies, GitHub Issues is for creating and tracking issues that are related to a repo. In many cases, development teams use GitHub Issues to track bug reports and feature requests. Think about how unproductive developers would be if they had to constantly keep tabs on Discord, Telegram, and their email inboxes to stay on top of bug reports! By using GitHub Issues, developers are able to focus their time and energy on writing code.
To streamline development of the ICON project, we recommend users submit bug reports and feature requests directly to GitHub Issues.
Let’s walk through how to submit an issue on GitHub now!
How to Create a GitHub Account
Feel free to skip to the next section if you already have one.
First, go to GitHub and click “Sign Up” in the upper right corner.
Next, walk through the interactive sign up process.
How to Find ICON GitHub Repos
Broadly speaking, repos relating to the ICON project can be found in the GitHub organizations below:
- icon-project – Repos for core projects like Goloop, BTP, and Nexus.
- icon-community – Repos for community-led projects like the icon.community website, CPS, and grant templates.
- sudoblockio – Repos for the ICON community tracker API and frontend.
To make things easier, we’ve also compiled a list of popular ICON repos here.
How to Create a GitHub Issue
To create a GitHub issue, navigate to a repo and click the “Issues” tab.
On the issues page, click “New Issue”. Next, provide a title and description for the issue. The GitHub editor supports Markdown for the description, so feel free to use text formatting if needed. Finally, click “Submit New Issue” to complete the process.
Some repos have standardized templates for submitting issues. For example, on ICON’s Nexus frontend repo, clicking on the “Issues” tab will bring you to a page where you can choose between “bug report” and “feature request” templates.
Clicking “Get Started” for a template will populate the editor with a predefined template. If the issue you want to submit can be adequately covered by one of the templates, we recommend using the template to help speed things up.
After submitting an issue, it will be visible in the “Issues” tab for the developers to see.
As an open source project, community contribution is very important for ICON. If you’re not a developer, submitting bug reports and feature requests via GitHub Issues is a great way to start contributing to the ICON project. If you have any questions about ICON’s GitHub repositories, be sure to join the ICON Discord and start a discussion!