AwesomeDot - Central Library of Polkadot Ecosystem

Hello Everyone

I am the core contributor and maintainer of AwesomeDot repository. The repository main goal is to showcase the vibrant open-source contributions happening within the Polkadot ecosystem, including notable projects like Nova, Snowfork and etc.

Current Features

  • Curated list of cool, open-source projects related to Polkadot.
  • For each listed project, provide a brief description, related links, and any additional relevant information.
  • Structure the repository for easy navigation and exploration of listed projects.

How will this help to our ecosystem

  • Provides a centralized resource for developers and enthusiasts to discover projects in the Polkadot ecosystem.
  • Encourages open-source contributions.
  • Offers visibility and recognition for projects contributing to the Polkadot ecosystem.

Future Plans

  • Add more developer friendly learning resources.
  • Reach out to more community members so there is no duplication of projects.
  • Develop a simple desktop website with SEO features to make sure they reach out to more eyes.

We recently hit 50 stars on Github. We are really thankful to all for your support. Please reach out to me or open a pull request if i missed your project.

Matrix : @fardeen_haque:matrix.org

4 Likes

We have hit 100 stars on our repo. Thank you for all the support. What we can add to improve our repo. Let us know and we can add this to our repository.

1 Like

Hi @haquefardeen

First, I want to say that I really appreciate this resource you have created and maintained for the Polkadot ecosystem.

Since you have asked for some feedback, I would love to give you some of my thoughts on resources like this, and perhaps see if you would be interested to develop some “next generation” version of the “awesome” resource list.

Background

First, please check out my own version of awesome-polkadot

See the quote at the top of my readme:

The problem I found with other awesome lists is that there are so many links and resources, that quality is lost to the noise, and approachability becomes overwhelming.

Unlike other awesome lists, this is NOT meant to be a comprehensive list for all options available in the Polkadot ecosystem. Instead, this is a very opinionated and unapologetic list of resources which I find useful and that I use myself.

You can feel confident that if you use these same resources, they will work and provide a great experience.

Problem

When I go to your resource list, for example of Wallets, the list is huge!

Imagine being brand new to the Polkadot ecosystem, and then needing to figure out which of these wallets is the one I should actually use. We are both blessed and cursed for taking on such a decentralized approach to our ecosystem, that we have supported and spawned so many teams building so many wallets, but truthfully, this hurts on-boarding and adoption.

Furthermore, because you have so many resources on your site, it seems quite hard to keep this list up to date, and know that all the resources you are referencing are still high quality and providing the best experiences to end users.

So then we have to see, can we find solutions to having a list of resources which:

  • are not “picking winners” / biased towards any specific teams
  • is high signal to noise ratio for brand new users
  • stays up to date as the ecosystem develops

Solutions

So here are some ideas to solve these problems.

Project Liveness Bot

It would be good if every link on your resource list had some metadata on where we could check that the project is still being worked on. For most of these, probably a github repo would be correct.

Then the bot would check that the repo has been updated in the last 3 months. If there has been no update in 3 months, we should probably assume the project is stale, and remove them from the list.

Such a bot could probably use github-actions, and be performed automatically on the repo.

Project Association Bot

Similar to the bot above, another bot which ensures that projects are still associated with the Polkadot ecosystem is important.

Unfortunately there have been teams who have decided to switch platforms, but such lists like this could still contain their links, which does not look good.

On the other side, there are a lot of projects that use Polkadot, but actually do not mention Polkadot at all anywhere on their site. We should encourage teams to at least show that their platform, service, app, or whatever is being secured by, funded, or supported by the Polkadot ecosystem.

Such a bot could check the homepage of each site, and check if the word “polkadot” appears, or better a phrase like “secured by polkadot”, otherwise that resource would be flagged.

Metrics Bot

One way we can make it more clear which products are better or being used more, is to attack metrics along side the links.

So whether it be the number of downloads and install on the app store, or number of page views from google, we should be able to make the list better and more organized with more relevant data at the top for the user using some bots which scrub activity metadata for these links.

Decentralized Ranking System

This is where ideas become a little bit of a bigger project.

As you can see from my awesome list, I created a list with very opinionated and limited resources to the Polkadot ecosystem, of which I felt all of them were high quality, and the products that I actually use.

I think we should encourage people in our ecosystem to do the same. Having one super list like this is not helpful if someone still needs to click every one of the 100 links to hunt for the right tool.

What we can do if people make their own, small, opinionated list is actually curate the list and rank products by “most recommended by the community”.

Perhaps one way to do this is to support a folder in your repo, where any github user can submit a pull request to update their favorite products. Imagine you create a “questionnaire”:

  • what wallet do you use:
  • what dex do you use:
  • what is your favorite coding tutorial:
  • etc…

Then you can process these answers, and actually rank your list based on the results.

You could even introduce some “reputation”, for example, if someone is a member of Parity, the Technical Fellowship, Web3 Foundation, or other “mostly unbiased” teams, you could give their score a higher rank.

Or perhaps you have:

  • Best Wallet as Voted by Technical Fellowship
  • Best Wallet as Voted by the Community

You would also need to handle obvious spam and gaming of the list, but I think you should be able to tell when that is happening.

Even Better

Even better than you keeping track of a central list of answers, would be individuals having their own repo with their own awesome list, and you would track those, so that people could update their lists on their own time, without having to ask you, and you could automatically parse and process those files.


Going to stop with ideas here, and see what you think about what I wrote above

9 Likes

These are some really good suggestions Shawn. Implementing all this features will really help to create a polkadot ecosystem map for beginners.

@haquefardeen Congratulations on 100 stars. You have been doing an amazing work on this repo for the last three years. Have you or Awesomedot has been funded by the treasury? My suggestion will be to create a website based on Shawn feedback, this will really help the ecosystem and also include more developer friendly guide to the repository.

1 Like

Hey Shawn,

First off, thank you so much for taking the time for the detailed feedback. All of your ideas are really detailed and well-thought-out, and I would love to see how we can integrate them into awesome-dot while being fair to all teams.

I completely agree on the challenges we’re facing in the awesome-dot repo. The exhaustive nature gets overwhelming for new users who are trying to dip their toes. Maintaining a list to keep everything high quality is an ongoing effort, though.

As I said, these ideas are really great, and I’d like to address them one by one:

  1. Project Liveness Bot

Regularly verifying if a project’s repository has been updated recently can be done with a bot that fetches all the data for any GitHub repo in the list. @kianenigma raised an issue here around checking all links and making sure none of them are dead, so this becomes a logical extension of this idea.

  1. Project Association Bot

I’ve been reading up on all the discussions that are happening around this topic on the Polkadot forum here and on GitHub here, but I am still waiting for some concrete instructions to come out of them before we can start thinking about it.

  1. Metrics Bot

This probably builds upon the Project Liveness Bot by extracting more info when GitHub info is collected, like stars or npm downloads, etc., but it might get tricky when we look at other sources like app stores or web analytics.

  1. Decentralized Personalized Lists

This is where it becomes non-trivial. I’ve been thinking about this, but I don’t have anything that can solve this intuitively. One of the solutions I’ve been considering is to build a frontend (web/app) that connects your wallet and uses awesome-dot data underneath, letting you store, bookmark, or rate resources. A lot of thinking needs to be done here.

I am definitely eager to start implementing some of these ideas in the repo, starting with the Project Liveness Bot and then diving into exploring metrics integration. In the meantime, if the ecosystem aligns on some common theme of the text for projects to include on their websites, we can dive into implementing the association.

If you’re interested, I’d love to collaborate further to refine these ideas and implement them effectively. Again, thank you for your thoughtful feedback and for initiating this important discussion. I hope we can enhance the awesome-dot repository to better serve both newcomers and existing members of the Polkadot community.

I am happy to give feedback and contribute where possible.

Hope you will start building something, and we can go from there.