The Times Of GitCoin
67%
average score over 1 application evaluations
Develop a personalized project discovery dashboard to connect users with community projects by utilizing vectorized data, interest matching, and categorization. Includes bubble graph visualization and detailed project tooltips.

What are we going to build?

We want to create a way for projects to discover new users based on different topics of interest to the user. This will allow projects to build better communities and for users to donate to projects that are important to them.

  • We want to build a dashboard that looks like this,

Final Version.svg

The rest of the flow will be the same as that of gitcoin’s, if successful individually we can move it as the replacement of the current platform. The important features of the dashboard,

  1. Personalized Recommendations.

We will fetch the past contributions of the user, and the projects that will have keywords and entities extracted from them will then be used as search parameters to display the nearest neighbors based on context.

b. Tags such as - Social, Gaming, Protocol, and Decentralised Finance, each of them will be associated with a different list of keywords, these keywords will be used to find similarity between the vectorized embeddings of the projects.

c. Least Donated, Super New initiatives - This will be a binary classification. For least donated it is similar to something that already exists now, for the super new initiatives, we will be using a custom classifier. The aim is to bring discoverability to new projects.

d. The Bubble Graph has three main features,

  1. Size
  2. Alignment
  3. Color

Each bubble on the graph represents a single project. We are most likely to click on the biggest bubble. Thus, the size of the bubble will be randomly decided and will change on each refresh. The alignment of the bubble will be based on where the embedding contextualization lies (based on vector embeddings), the idea is to group similar projects. The color of the bubble denotes the categorization done on top. When a new search is made, the search will be highlighted by giving it a color while greying the rest of the bubbles.

e. The tooltip,

On hovering the each project essential details about a product will be listed, this will give him a quick overview of the project.

f. OnClick,

On click of the bubble the data will load on the right side, this will be the entire grant information (same as onclick right now). The url will also change, so that people can share the page for others to vote.

2. How are we going to build it?

How do we use Vectorization and LLMs?

Building vector data: The first step would be to vectorize the grant information, this would querying and contextualisation of vector data. This will be done using Milvus and hosted on AWS EKS (Elastic Kubernetes). We can also use neuML for the NLP Tasks.

https://towardsdatascience.com/up-and-running-with-milvus-2466161e8b1f

https://github.com/neuml/txtai/blob/master/examples/57_Build_knowledge_graphs_with_LLM_driven_entity_extraction.ipynb

The search will be contextual. This will also be used for tags described in detail in 1. The similarity index (distance) between the summarised grant descriptions.

For extracting the other relevant details, we will be using a prompt along with the grant project information to generate a json. We will be using Mistral Instruct 8x7B v0.1 for the same. The anyscale.io api endpoints cost (https://docs.endpoints.anyscale.com/pricing) It will create summary (description), ask few very specific questions and extract keywords and entities.

The Tech Stack consists of three phases,

  1. Creation of JSON, creation of vector embeddings and storing them in a vector database and NOSQL database. This will be triggered by RabbitMQ FIFO Queue and would be linear. There would be a simple cron job which will trigger this when there is new data detected onchain (using graph apis). The RabbitMQ then would execute linearly creating embeddings and the JSON in required format. (Kafka, AWS SQS, Azure Service Hub can also be explored, I have got experience with RabbitMQ.) We will be summarising and creating JSON for projects from GitCoin Grants 15 for personalisation features.
  2. Querying the embeddings, querying the APIs. This will be a REST endpoint which will be a docker container and be written in Python FastAPI. It will allow users to query the database and return the required results. There will be a total of 6 APIs that will be created,
  • Search API
  • Personalized Recommendation API
  • Social, Gaming, DEFI, Protocol API
  • Super New Initiatives API
  • Least Donated API
  • Project Detail API

The rest of the flow will redirect to gitcoin.

  1. Frontend - The frontend will be entirely built in Typescript and React. We will use modern and sleek libraries. The frontend will have gitcoin colours and fonts. A small gamification feature would be to have a small celebration animation each time an item is added to cart!

3. How much will it cost?

It would cost approximately ~100-300$/month in server costs and API will vary based on tokens. The total would be 200-400$/month approximately. It can be drastically reduced by using different models and running the API in more lean environment.

4. When will you deliver?

Milestones

  • Experimentation and Design Finalisation

    • Expected Date of Completion: 15th March 2023
    • Pricing: $1000
  • Creation of API Backend along with RabbitMQ pipelines

    • Expected Date of Completion: 15th April 2023
    • Pricing: $2000
  • Creation of Frontend for exploring

    • Expected Date of Completion: 15th April 2023
    • Pricing: $2000
  • Successful Completion of Hosting Live gitcoin round on our platform (Includes server costs for a few months)

    • Expected Date of Completion: Aim for GG20, definitely by GG21
    • Pricing: $5000

5. Who are you guys?

We are the team behind Kleo Network, we have built something similar for browsing history and thus will be able to execute this very quickly.

Vaibhav Maheshwari (Full Time)

https://www.linkedin.com/in/vaibhavgeek/

Bhishma Goel (Full Time)

https://www.linkedin.com/in/bhishma-gohel-754297155/

Aishwarya Jain (Part Time)

https://www.linkedin.com/in/aishtronaut/

The Times Of GitCoin History

Explore projects

A Chinese blockchain education platform with 5k+ daily visitors, offering over 5k articles, 200+ hours of video, problem-solving, and translated technical documentation.
This project is all about memes that create awareness on the Gitcoin ecosystem!
A plugin-based agent-to-agent communication framework that allows developers of various expert levels to build their own multi-agent applications.
OmniFlux is a blockchain protocol allowing token interoperability across networks, providing a framework for seamless token transfers without liquidity or fungibility issues, supporting multiple bridge integrations.
Summary: DYOR aims to simplify and promote web3 technology, seeking community support to educate and empower individuals globally for decentralized tech adoption.