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
282 stars 128 forks source link

C# library to read Fragment auctions information #290

Closed mehrandvd closed 10 months ago

mehrandvd commented 1 year ago

Summary

The goal is to write a library to read fragment.com auctions information.

Context

There is no library in .NET ecosystem for working with Fragment to deal with auctions. Writing a C# library helps all .NET developers to be able to read information about auctions available in Fragment.

Goals

Develop a library for working with fragment.com in C#

Deliverables

Definition of Done

Reward

Oriental Release Date

3 weeks after approval

Gusarich commented 1 year ago

I don’t think we need such libraries.

delovoyhomie commented 1 year ago

@mehrandvd, what’s the importance of this? For what purposes can it be used?

mehrandvd commented 1 year ago

@delovoyhomie If you want to write some bots so they can check the auctions on fragment in .NET ecosystem you need a way to read the information available on fragment.com. Using this library .NET developers can easily access to the Fragment data on auctions and write new cool stuff on it. Personally, I'm going to use it to analyze fragment data to check whether some startup ideations are feasible or not.

In fact, I've already started it in this GitHub repo: fragment-sdk-dotnet And here's a blog post about it that I wrote quite recently: Telegram NFT Auctions (Fragment) with C#

justdmitry commented 1 year ago

https://github.com/justdmitry/TonDomainInfoBot - already existing Telegram bot that can parse info from .ton, .t.me and anonymous numbers smartcontract storage, including auction info. https://github.com/justdmitry/TonLib.NET - C# library that powers that bot.

mehrandvd commented 1 year ago

https://github.com/justdmitry/TonDomainInfoBot - already existing Telegram bot that can parse info from .ton, .t.me and anonymous numbers smartcontract storage, including auction info. https://github.com/justdmitry/TonLib.NET - C# library that powers that bot.

Thank you @justdmitry. Yes, I'm aware of TonLib.NET, and to be honest, I'm really enjoying it. I've also checked the way you are using it in TonDomainInfoBot, and there's a lot to learn for me there.

The problem I'm addressing at fragment-sdk is a bit different. I believe that TonLib.NET is not the best way one can write business logic on auctions. There should be easier libraries making it much easier to work with auctions like:

var client = new FragmentClient();
var auctions = client.Numbers.GetAuctionItems(FilterType.Sold, SortType.RecentlyListed);

It should be as easy as this for .NET developers to work with auctions. I believe the correct implementation for FragmentClient is to use TonLib.NET under the hood.

But as I can't figure out how to get this information from TonLib.NET yet, I scrapped the fragment website. In the near future, I should replace the web scrapping parts with proper calls to TonLib.NET.

delovoyhomie commented 10 months ago

@mehrandvd, I'm questioning the practicality of using the C# library for parsing information from fragment.com. Additionally, a reward of 2000 TON seems overly generous for such a task. We genuinely appreciate your contributions. Please consider submitting a new issue with a fresh idea, which we will certainly review with due attention!