Hackathon! Build a creative and simple web-based trading front end using Vega's APIs [In progress]

Github Issue (https://github.com/vegaprotocol/bounties/issues/8)
Gitcoin link (https://gitcoin.co/issue/vegaprotocol/bounties/8/100025586)

Please see Github issue or Gitcoin page for full details, including how to apply to participate :heart:

Prize Bounty

Up to 10000 DAI

  • 1st Prize 5000 DAI
  • 2nd Prize 3000 DAI
  • 3rd Prize 2000 DAI

Introducing Vega

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.

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 Vega GraphQL API.

The Vega public testnet is rapidly adding new features and can be accessed here with further links at the bottom of this issue.

Challenge Description

An opportunity to build a creative and simple web-based trading front end using Vegas’s APIs. We’re looking for an interface that speaks to DeFi degens and newbies alike and gives the trader a quick way to access markets. Given the Vega protocol is designed to create and trade any derivative the possibilities of how this bounty can be solved are endless. One direction can of course be to do a Robinhood or Uniswap-style interface, though we encourage challenging the status quo of trading UX.
For more guidance and ideas check out the criteria laid out below.

Challenge Criteria

  • Design and create a fast and simple to use web application that uses the Vega APIs to present a working trading interface with a minimum feature set:
    • List markets and market data with the ability to select and show a particular market. A distinction should be made between proposed markets vs. enacted markets with active trading. It may be that the more active markets are shown by default
    • Show simple graphs of the data from markets (using an open source library such as the Vega Pennant graphing library, or other one of the many other alternatives)
    • Access Vega wallet (hosted or local) for signing of transactions
    • Submit and cancel orders
    • Display party specific information, including collateral asset total, total orders etc.
    • Manage collateral assets for a party (linking to Vega console for deposit and withdrawal)

      Note: Streaming of data where possible is recommended (using either GraphQL or our open source gRPC clients)
  • Design wise, the web application should embody the spirit of simplicity and ideally work on a mobile first basis, we’re looking for more than just using a CSS skin ‘out of the box’ and not just the ubiquitous Twitter bootstrap. Please see the sketches linked below for design direction but please note that this is just an idea; replicating this exactly is not necessarily the winning solution. It is simply to give an idea of the kind of UX that we feel is appropriate for the task. It could be further simplified, this is a fun part of the bounty!
  • The application should be web based, for example, written using Javascript, CSS and HTML. The app should be designed in a way that it can be easily maintainable in the future.
  • A concise readme should be provided and if possible a basic set of markdown documentation detailing how to extend the application or future improvements.
  • The solution should be open-source under the MIT license.

Design/UX inspiration sketches

Resources for Developers

Submission Requirements

  • You should aim for a viable web app with the smart contract fully respecting the challenge description and criteria.
  • The project needs to be open-source and released on GitHub for us to review the entire source.
  • Demo of the project in its current state (include future plans and/or any blockers you faced)

Submission Deadline

May 20th 11:59pm GMT 2021

Judging Criteria

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.

Winner Announcement Date

May 23rd 2021

Questions & Reviews

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