This issue is reserved for people who have never contributed to Hedera or any open source project in general.
We know that creating a pull request (PR) is a major barrier for new contributors.
The goal of this issue and all other issues labeled by 'Good First Issue' is to help you make your first contribution to Hedera.
πΎ Description of the issue
Currently we are using the REST API of the mirror node without a proper clientSDK for the types, enums, errors, etc. that makes it cumbersome and flaky, there are no standards and code is not ideal. Also, makes checking the api more often for supported fields, objects, errors, and statuses types.
From the 2 options above, the preferred one if possible is the first one since no generated code needs to be updated with each release of the mirror node, types are created in runtime by the tool.
π Step by step guide to do a contribution
If you have never contributed to an open source project at GitHub, the following step-by-step guide will introduce you to the workflow. More information and concrete samples for shell commands for each step can be found in our CONTRIBUTING.md file.
A more detailed general documentation of the GitHub PR workflow can be found here.
[ ] Claim this issue: Comment below that you are interested in working on the issue
[ ] Wait for assignment: A community member with the given rights will add you as an assignee of the issue
[ ] Fork the repository: You can do that in GitHub (by simply clicking the 'fork' button).
[ ] Check out the forked repository
[ ] Create a feature branch for the issue. We do not have a hard naming definition for branches but it is best practice to prefix the branch name with the issue id.
[ ] Solve the issue in your branch.
[ ] Commit your changes: Here, it is needed to add sign-off information to the commit to accept the "Developer Certificate of Origin" (https://developercertificate.org). More details can be found in our CONTRIBUTING.md
[ ] Start a Pull Request (PR): We have a pattern for naming pull requests that a GitHub Action checks. We use that pattern to support the creation of automatic release notes.
[ ] Check GitHub Actions: Several GitHub Actions will be triggered automatically for each PR. If a GitHub Action fails and you do not understand the cause of that error do not hesitate to add a comment to the PR and ask the Hedera developer community for support.
[ ] Wait for reviews: Members of the Hedera developer community will review your PR. If a reviewer finds any missing pieces or a problem, he or she will start a discussion with you and describe the next steps for solving the problem.
[ ] You did it π: We will merge the fix in the develop branch. Thanks for being part of the Hedera community as an open-source contributor β€οΈ
π Contribute to Hacktoberfest
Solve this issue as part of the Hacktoberfest event and get a chance to receive cool goodies like a T-Shirt. π½
π€ Additional Information
If you have any questions, just ask us directly in this issue by adding a comment. You can join our community chat at Discord. A general manual about open-source contributions can be found here.
It makes sense to make it a standalone module similar to other packages like relayserver and ws-server. that way is independent of the relay (package) and can be used by any other package.
ππ₯ First Timers Only
This issue is reserved for people who have never contributed to Hedera or any open source project in general. We know that creating a pull request (PR) is a major barrier for new contributors. The goal of this issue and all other issues labeled by 'Good First Issue' is to help you make your first contribution to Hedera.
πΎ Description of the issue
Currently we are using the
REST
API of the mirror node without a proper clientSDK for the types, enums, errors, etc. that makes it cumbersome and flaky, there are no standards and code is not ideal. Also, makes checking the api more often for supported fields, objects, errors, and statuses types.Proposed Solution:
Generate a clientSDK for the mirror node using the openAPI spec provided for the mirror node https://testnet.mirrornode.hedera.com/api/v1/docs/openapi.yml
There are 2 options that are promising:
From the 2 options above, the preferred one if possible is the first one since no generated code needs to be updated with each release of the mirror node, types are created in runtime by the tool.
π Step by step guide to do a contribution
If you have never contributed to an open source project at GitHub, the following step-by-step guide will introduce you to the workflow. More information and concrete samples for shell commands for each step can be found in our CONTRIBUTING.md file. A more detailed general documentation of the GitHub PR workflow can be found here.
sign-off
information to the commit to accept the "Developer Certificate of Origin" (https://developercertificate.org). More details can be found in our CONTRIBUTING.mdπ Contribute to Hacktoberfest
Solve this issue as part of the Hacktoberfest event and get a chance to receive cool goodies like a T-Shirt. π½
π€ Additional Information
If you have any questions, just ask us directly in this issue by adding a comment. You can join our community chat at Discord. A general manual about open-source contributions can be found here.