Github Issue (https://github.com/vegaprotocol/bounties/issues/6)
Gitcoin link (https://gitcoin.co/issue/vegaprotocol/bounties/6/100025586)
Please see Github issue or Gitcoin bounty page for full details, including how to apply to participate
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.
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 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.
The task we’d like to see completed for a bounty reward is to create a set of GraphQL how-to guides with an accompanying open source walk-through app which shows how to integrate with Vega.
- Design and create a showcase application and a set of supporting how-to guides that describe how the application works, primarily the queries made to Vega.
- The how-to guide source files should be written using Markdown, so that they can be incorporated into the Vega documentation in the future. Ideally they should be output to web pages using a static builder like Hugo (https://themes.gohugo.io/theme/hugo-book/) and use a similar presentation style to the Vega docs theme (we can supply CSS/guidance if needed).
- 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.
- We would like 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
* 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.
We’re an exciting blockchain project with a recently launched public testnet, we’re adding new features all the time therefore we’d love anyone interested in completing our bounties 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 to complete our bounties to a high standard. We’re friendly, open and helpful, so don’t be afraid to ask questions.
Publish your submission into a public Github repo with clear and informative README describing how to use it.
For this bounty, we will provide a bounty reward of up to 1501 DAI, by working on the bounty you understand and accept that this is the reward total available. Finally, please check with us and keep in touch with the Vega team to ensure the solution is acceptable.
- Vega Documentation
- Vega API Samples
- Vega API clients
- Vega Discord Chat
- Vega Community Forums
- Vega Technical Overview Paper
- Vega Whitepaper
We’re a friendly team and are very keen to help where possible.
Keep Calm and Buidl On!