ton-society / grants-and-bounties

TON Foundation invites talent to imagine and realize projects that have the potential to integrate with the daily lives of users.
https://ton.org/grants
243 stars 103 forks source link

Revise SDKs page for better library understanding #357

Open reveloper opened 7 months ago

reveloper commented 7 months ago

Summary

A reorganization of the SDKs page based on functional type libraries, for clarity and precision.

Bounty Context

Why it's Important? This enhancement should improve the process of choosing SDK for TON Blockchain developers.

Currently, it's challenging for developers to determine which library to use for each task, leading to inefficiencies and a slower development process. The change will streamline the development flow, making the platform more friendly and intuitive to new and existing developers alike.

Problem showcase The existing organization of the SDKs page is based on the type of transport- RPC/ADNL/without, which is causing confusion for developers.

Potential Solution A revised SDKs page based on the functional direction of libraries, similar to the ETH documentation reference, will offer an improved user experience. With this change, developers will be able to quickly find the appropriate library for their specific task, which can accelerate development and innovation on the TON Blockchain platform.

References

ETH Documentation Reference:

REWARD

🪄 Created with the help of TON Bounties Creator Bot.

liketurbo commented 5 months ago

In the Ethereum JavaScript Reference, they, besides the connection to the node, also showcase interacting with smart contracts, wallet functionality, and utility functions. Does this footstep aim to redo the SDKs page, similar to that, or just focus on differentiating why/when/how to choose between RPC/Native ADNL/tonlibjson wrapper/3rd-party services?

reveloper commented 5 months ago

@liketurbo Yes, the main priority is on the "how to choose the SDK for my task" problem. The developer has a problem and doesn't know how to solve it, and we want to provide a potential way to solve his task.

I also expect a concise description and demonstration of contract interactions get method(seqno), message sending(transfer message with a comment), and NODE/RPC connections.

  1. This could assist developers in selecting the appropriate SDK, and the best way to create an optimal description is to double-check the developer's feedback while designing this.
  2. It should primarily reference related documentation and the main GitHub pages of libraries. We should avoid including any information that could quickly become outdated.
liketurbo commented 5 months ago

@reveloper Sorry for the delay. There are a couple questions that, I believe, need addressing.

liketurbo commented 5 months ago

@reveloper Can you list all the tasks that you want to showcase, or is getting seqno, transferring a message, and establishing node/RPC all there is to it?

I think the list from xssnick/tonutils-go provides good coverage for the most common tasks.

ProgramCrafter commented 3 months ago

I can complete this footstep.

reveloper commented 1 month ago

@delovoyhomie This task was partly finished with PR , but the expected result doesn't reached. However, for the part @ProgramCrafter done, it's fair to reamburse 300USD in TON for his job. (reward updated)

ProgramCrafter commented 1 month ago

I acknowledge the updated reward and provide wallet, UQCyoez1VF4HbNNq5Rbqfr3zKuoAjKorhK-YZr7LIIiVrX0-.