Skip to content
This repository has been archived by the owner on Jan 3, 2024. It is now read-only.

Build amazing GraphQL reference applications against the Vega APIs #11

Closed
cdm opened this issue Sep 7, 2021 · 4 comments
Closed

Build amazing GraphQL reference applications against the Vega APIs #11

cdm opened this issue Sep 7, 2021 · 4 comments

Comments

@cdm
Copy link
Contributor

cdm commented Sep 7, 2021

Vega hackathon

Vega is a proof of stake blockchain for creating and trading derivatives. It provides infrastructure for decentralised markets that settle in assets held on Ethereum, and in future also Bitcoin and other major collateral blockchains. Vega facilitates high speed, permissionless derivatives markets.

The Vega public testnet showcases our technology and we are looking for passionate and talented members of the community to help us build out the vision by working with us to shape the end product.

Through a rich set of APIs, developers can build on top of the Vega network and build immersive web, mobile or desktop applications. One such application is the Vega Console, this is a Javascript application built with React and makes use of the GraphQL API.

Description

For Gitcoin Grants Round 11 we would like to see the talented community of hackers/developers build GraphQL reference applications against the Vega APIs.

The goal is to showcase the power and flexibility of GraphQL on Vega 💥

Submissions should be open source walk-through style apps which show how to integrate with Vega. We're primarily looking for front end client applications, as it'd be good for the walk-through app to have an in browser visual element e.g. listing orders, streaming events, etc.

This task is ideal for someone with Javascript knowledge and a passion for, or desire to learn GraphQL.

Digging a bit deeper

There are two areas we're interested in exploring with the community:

  1. Creating a suite of open-source repos with community example apps that can help other developers, including new Vega Builders Club members.
  2. Creating an interactive walk-through application similar to Svelte examples, or a tutorial where users can interact with queries e.g. example.

Current APIs and Testnet documentation for Vega

There are currently three API transport types on Vega: gRPC, GraphQL and REST. These are described in some detail in with a set API how-to guides (complete with code examples) on https://docs.testnet.vega.xyz.

Note: It is recommended you check out the docs linked above to familiarise yourself with the current information. Also see the section below on "Familiarity with Vega" as this is an essential prerequisite.

As you'll see, the Vega Testnet API how-to guides are written primarily for the REST/gRPC APIs and so there is a real need for a way for developers to engage with the very powerful GraphQL APIs, especially for web apps and real-time streaming.

Acceptance criteria

  • Design and create a great showcase or walk-through application.
  • The application should be web based, using Javascript and GraphQL. The app could be written in vanilla JS or using a simple to understand framework such as React or Svelte.
  • Bonus points for a set of supporting markdown files that describe how the application works, primarily the queries made to Vega.
  • The GraphQL APIs (see GraphQL playground), support query, mutation and subscriptions to streaming data.
  • The GraphQL playground should be referenced and described in the guides, additionally code examples should also link directly to an appropriate section in the reference docs (https://docs.testnet.vega.xyz/api/graphql/).
  • For signing of transactions, the Vega wallet uses a set of REST APIs. It is not necessary to describe how to sign transactions in detail, however signing of transactions will need to be discussed and coded into the app if using the signing feature.
  • We would love to see the following aspects of the protocol* to be covered by the showcase:
    • Listing markets and market data (including market status)
    • Streaming of orders and trades
    • Party (trader) information for a given public key, including account balances and positions.
    • Prepare and place an order on a market
    • Streaming of events
    • Governance proposals
      * please feel free to discuss the list with the team when designing the solution, this is a subset of the protocol and one to one guidance is available to understand how the protocol operates.
  • Code and documentation should be open sourced under the MIT license.
  • Design or CSS styling of the showcase app should align with the Vega branding and we'd suggest minimal styling if using a common UI framwork.

Familiarity with Vega

We're an exciting blockchain project with a public testnet (https://fairground.wtf), we're adding new features all the time therefore we'd love anyone interested in completing our hackathons to get to know our platform first. We feel it is very important for you test out the platform, check out our documentation and understand the way the protocol works. We're friendly, open and helpful, so don't be afraid to ask questions.

How to Submit

Publish your submission into a public Github repo with clear and informative README describing how to use it, a video or demo of the app in use is strongly recommended.

Hackathon prizes

Prize pool of $10000 USD worth of $VEGA.

Up to $2500 USD worth of $VEGA per prize winning submission.

Note: 50% available on award, with remainder unlocking linearly over 6 months.

Judging critera

Prizes will be awarded to the individuals/teams that produces the best approach and while respecting the challenge description. The Vega team will judge each submission on its own merit with a minimum level of quality and features delivered. Work has to meet sufficient quality and a level expected by the judge to be awarded a prize. The Vega team has the final say in any/all rewards.

Resources for Developers

Questions & Reviews

You can reach out to us for any queries on our Discord Chat or post your questions in our Community Forums

We're a friendly team and are very keen to help where possible. We love teams who interact and get feedback before submitting their final code.

Let's buidl on Vega!

@gitcoinbot
Copy link

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


This issue now has a funding of 650.855 VEGA (10127.3 USD @ $15.56/VEGA) attached to it.

@gitcoinbot
Copy link

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


Work has been started.

These users each claimed they can complete the work by 2 weeks, 6 days from now.
Please review their action plans below:

1) dtiv has started work.

A walkthrough application of the Vega GraphQL using vanilla JS or react

Learn more on the Gitcoin Issue Details page.

@gitcoinbot
Copy link

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


Work for 650.855 VEGA (10999.53 USD @ $16.46/VEGA) has been submitted by:

  1. @ben-razor

@cdm please take a look at the submitted work:


@gitcoinbot
Copy link

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


The funding of 650.855 VEGA (852.63 USD @ $1.31/VEGA) attached to this issue has been cancelled by the bounty submitter

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants