Coder Social home page Coder Social logo

tyvdh / stellar-quest-bounties Goto Github PK

View Code? Open in Web Editor NEW
23.0 13.0 27.0 745 KB

Stellar Quest Bounties is an extension of the traditional, series based Stellar Quest challenges allowing seasoned and passionate Stellar Questers to continue their journey of education and earning during the "lean times" between Stellar Quest series.

Home Page: https://quest.stellar.org/bounties

blockchain bounties cryptocurrency

stellar-quest-bounties's Introduction

Stellar Quest Bounties

Stellar Quest Bounties is an extension of the traditional, series based Stellar Quest challenges allowing seasoned and passionate Stellar Questers to continue their journey of education and earning during the "lean times" between Stellar Quest series.

Additionally, Stellar Quest Bounties provides an avenue for directing smaller amounts of XLM towards more granular, achievable, back-burner tasks as determined by SDF, Stellar partners and you! the Stellar Community.

Stellar Quest Bounty Structure

Stellar Quest Bounties are broken up into two distinct groups (well, really three but primarily two): Hunters and Reviewers. The names are pretty self explanatory with Hunters being those doing the work to achieve the specification (spec) of the bounty, and Reviewers auditing that work to ensure it meets the standard and sufficiently accomplishes the task. The unique bit here is that both Hunters and Reviewers get paid in this system, not just those doing the bounty work.

The third group at work here are those writing and funding the bounties, but that most often will be SDF and/or other Stellar-based businesses and enterprises. However, you too can write bounties! (Hint there's even a continuous bounty for writing bounties!). This third group isn't heavily involved in the bounty process outside of an initial PR into the ./bounties directory so we won't spend too much time on them.

For more information about creating a bounty see our Bounty Template, our "Submit a Bounty" bounty, and the Bounty Ideas Discussions category.

Hunters

Can claim and accomplish bounties in exchange for rewards.

Hunters claim open bounties at the level they are qualified for and complete the objectives, finally submitting the task for review by a reviewer (or two). The reviewer will assign the task a state of either pass, fail, or retry. Once the bounty has received a pass state, the hunter is awarded their share of the award amount as detailed by the bounty spec.

Reviewers

Can review bounties in exchange for rewards.

Reviewers claim reviewable tasks and complete a review on the task assigning it a state of pass, fail, or retry. Upon review completion the reviewer is awarded their share of the award amount as detailed by the bounty spec.

Bounty Types

There are three types of bounties in the Stellar Quest Bounties universe. Each with their own merits, joys, and sorrows. Choose wisely.

Continuous

The first and most common bounty type is the continuous, educational bounty. These are intended as longer format and less strict Stellar Quest challenges. These are evergreen bounties able to be claimed forever and always by any curious newcomer able and eager to test their knowledge and increase in experience. Don't let the lower value award fool you, these are great bounties to level up your skills such that bigger bounties and future Stellar Quests are more easily conquered.

Capped ({x})

The second bounty type is the capped bounty. These tend to be relatively short-lived and achievable bounties. There exists a limited number of awards for each bounty as denoted by the cap. These are most often employed when a PR, service, or contribution is needed quickly and the cost is related more towards an answer arriving speedily and less that it be something specific. It's also a great bounty type for exploring innovative answers and testing assumptions by allowing for several different answers and explorations from multiple unique perspectives.

Competitive

The last bounty type is the competitive bounty which is rewarded in a graduated manner according to the details laid out in the bounty spec. These will be short-lived, well-structured, and event-based bounties with awards being paid out top-to-bottom for anyone meeting review criteria. These aren't incredibly common, as we primarily use the SCF for more structured, long-format, competitive funding but occasionally you just need a little something different and for that we have competitive bounties.

Flow for Bounty Hunters

Ready to start claiming bounties and earning rewards? Here's how.

  • Step 1: Pick a bounty

    • Look through all of the available bounties in the /bounties directory in this repo. They are divided into 3 difficulty levels so chose one which feels appropriate to your skill, level of involvement, and the earning potential that excites you.
    • Be sure to read all the bounty instructions and details carefully though, as not all bounties are created and structured equally. Some are always available to claim, others are capped or may only accept 1 entry as viable for payout, so make your selection accordingly.
    • You can look through the issues tab to discover which bounties are being worked on by whom. Who knows, maybe you could team up with someone and solve a bounty together!
  • Step 2: Open a new issue

    • Once you've chosen a bounty your next task is to "claim" it by opening a new issue via the Begin The Hunt issue template.

    • Bounty issues can exist in 3 states, all demarcated by a color-coded emoji, [๐Ÿ”ตย , ๐ŸŸขย , ๐ŸŸฃย ].

      Mark your progress

      • ๐Ÿ”ตย  Started working
      • ๐ŸŸขย  Ready for review
      • ๐ŸŸฃย  Review completed

      • ๐Ÿ”ตย  You have claimed and begun work on the bounty. You are actively making progress and should comment in the issue with any progress, details, or questions for reviewers.
      • ๐ŸŸขย  You have finished the bounty and are ready to begin the review process. Reviewers will now begin to review your work and assess it's level of completeness. From here, more work may be requested to finish the bounty, or your work may be rejected if you're really off target.
      • ๐ŸŸฃย  The review is complete and it's time to await payment for a job well done!

      You are strongly encouraged to search for other, similar issues before beginning work to ensure you're not about to compete for a bounty which already has a max number of claimants. If that's the case though feel free to explore any open issues and offer assistance where it's needed. Team bounties often do better than solo efforts.

  • Step 3: Work on your bounty

    • The next step is obvious: Do the work! Please ensure you stick closely to the bounty scope, guidelines, and details as laid out in the spec doc. Do your work excellently and you stand a great chance of claiming the reward.
    • Be sure and post progress occasionally on your bounty issue in order to catch any potential issues as early as possible and to confirm you're still working and progressing on the bounty.
  • Step 4: Have your bounty reviewed

    • Once you've completed the bounty sufficiently and believe it to be finished you should change the status on the issue from a ๐Ÿ”ตย  to a ๐ŸŸขย  using the checkboxes in the issue to denote your bounty is ready for review.
    • Feel free to continue to work on your bounty, but try and be responsive once reviewers begin commenting on your bounty. Prioritize their comments as their goal is to see that the bounty terms are met.
  • Step 5: Claim your reward

    • Once the review has concluded your bounty will either be resolved as ineligible (unlikely but possible in the case of a weak attempt or ineligible duplicate bounty claims) or ready for payout.
    • If the latter, you should change the bounty to the ๐ŸŸฃย  status using the checkboxes on the issue so we can ensure a timely reward payout.
    • Payments will be made directly to your Stellar public address and a comment with the corresponding transaction hash will be posted to your issue. If you haven't already, be sure to add your address here to facilitate the fastest possible payouts.

Flow for Bounty Reviewers

Ready to review bounties and get paid for your expertise? Here's how.

  • Step 1: Choose a bounty

    • Look through all of the available bounties in the Issues tab in this repo. They are divided into 3 difficulty levels so chose ones which feel appropriate to your skill, level of involvement, and the earning potential that excites you.
    • Be sure to read all bounty instructions and details carefully as it's your job to ensure bounties sufficiently meet the criteria for the reward payout. You can only do that best when you make yourself very familiar with the bounty goals and objectives yourself.
  • Step 2: Review the bounty

    • Clone the repo, pull the PR, test the solution, click the buttons, interact with the interface, and do the things. It's your job to test (break?) and ensure the provided solution for the bounty actually meets the requirements. Leave comments, ask questions, but be kind.
    • You have two courses of action on every bounty you review. Most commonly you will review, comment, resolve and discuss until the bounty is complete and you give it your stamp of approval for payout. In rare cases however a bounty may not have put in sufficient effort and you should mark it for tossing. In that case neither the hunter nor the reviewer will be rewarded so be slow to mark a bounty for the trash.
  • Step 3: Claim your reward

    • Once you've marked a bounty as complete your job is done until the payout is made to both the hunter and you.
    • Payments will be made directly to your Stellar public address and a comment with the corresponding transaction hash will be posted to to the bounty issue which you reviewed. If you haven't already, be sure to add your address here to facilitate the fastest possible payouts.

stellar-quest-bounties's People

Contributors

blackbadpinguin avatar boonku avatar dfugere1 avatar diekautz avatar dmptrluke avatar elliotfriend avatar firdausfarul avatar fpbrault avatar hanseartic avatar huuquyet avatar kalepail avatar kanaye avatar lorddark6660 avatar matejmecka avatar orsab avatar raeesnazeer avatar rahimklaber avatar ralphilius avatar silence48 avatar smephite avatar sohanrai avatar tomkiljo avatar vinamogit avatar w00kie avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

stellar-quest-bounties's Issues

SEP-0010 JavaScript Client Reference Implementation

Link the bounty file

https://github.com/tyvdh/stellar-quest-bounties/blob/main/bounties/level-2/sep10-javascript-client.md

Mark your progress

  • ๐Ÿ”ตย  Started working
  • ๐ŸŸขย  Ready for review
  • ๐ŸŸฃย  Review completed

Provide relevant details

Going to try this one in TypeScript, to get my hands dirty with it. Wish me luck ๐Ÿ˜„

GitHub Repository: https://github.com/ElliotFriend/cuddly-eureka https://github.com/ElliotFriend/furry-octo-spork

Bounty Idea: Mobile-friendly layout for laboratory

Initial comment from @tyvdh in SQ Discord

Love it. Definitely will be tricky but the lab is all about copy and pasting secrets. It's the lab not a production wallet so having some mobile support would be great. It will be a monumental task though if CSS attributes are in line hard coded

Add account viewer to an existing project

Link the bounty file

https://github.com/tyvdh/stellar-quest-bounties/blob/main/bounties/level-1/basic-account-viewer.md

Mark your progress

  • ๐Ÿ”ตย  Started working
  • ๐ŸŸขย  Ready for review
  • ๐ŸŸฃย  Review completed

Provide relevant details

As per the question in discord I am not completely sure if this submission is eligible. I just trust the reviewer's judgement as well as obviously the tallyman ;).

Review this bounty

PR: hanseartic/stellar-claim#2
Deployed to: https://balances.lumens.space

๐Ÿ”ต `stellar-docs-code-snippet.md` created-pull-requests

Overview

I have submitted PRs for the following code snippets.
Here's a link for the repository where you can find the PRs, https://github.com/stellar/new-docs

In the following tables,

  • #Functions is the count of unique blocks of code in an example.
  • Total is the product of the number of languages the code is written in and the function count for each example.

Stellar Documentation

Name Language #Functions Total
Clawback Python ~ Java 10 20
Claimable Balance Python 6 6

Horizon API Reference

Name Language #Functions Total
Retrieve Fee Stats Python 1 1

Federation addresses for questers

Link the bounty file

https://github.com/tyvdh/stellar-quest-bounties/blob/main/bounties/level-1/create-bounties.md

Mark your progress

  • ๐Ÿ”ตย  Started working
  • ๐ŸŸขย  Ready for review
  • ๐ŸŸฃย  Review completed

Provide relevant details

PR: #109

Discussed in #78

Originally posted by hanseartic August 5, 2021

Scenario

Currently there are already a few different use-cases where a user's stellar-account is required. The most obvious ones: quests and bounties. But there is more like tip-bot, quest-monitor-bot.

So each time a quest-related service system is established there is need to map users (either discord or github) to stellar accounts. The federation-address would look like <username>*quest.stellar.org then.

It would be nice to provide questers with federation addresses for two reasons

  • central place where addresses could be looked up
  • foster community feeling (is this paying into this?)

Bounty idea

The goal is to create come up with a bounty that addresses the scenario described above.

For example it could be to create a service that provides login via github or discord and allows users to add their stellar account. Said service could then act as source for a federation server (e.g. stellar's reference implementation) linked in https://quest.stellar.org/.well-known/stellar.toml.

Useful links

Stellar docs code snippet

Link the bounty file

https://github.com/tyvdh/stellar-quest-bounties/blob/main/bounties/level-1/stellar-docs-code-snippet.md

Mark your progress

  • ๐Ÿ”ตย  Started working
  • ๐ŸŸขย  Ready for review
  • ๐ŸŸฃย  Review completed

Stellar Documentation

Name Language Award Paid
Glossary
Clawback Java (Pending) 150 XLM
Clawback Python (Pending) 150 XLM
Claimable Balance Python (Merged) 150 XLM โœ…

Horizon API Reference

Name Language Award Paid
Retrieve Fee Stats Python (Pending) 50 XLM
List Claimable Balances Java (Pending) 50 XLM
Ledgers
Retrieve a Ledger Go (Pending) 50 XLM
Retrieve a Ledger's Transactions Go (Pending) 50 XLM
Retrieve a Ledger's Operations Go (Pending) 50 XLM
Retrieve a Ledger's Payments Go (Pending) 50 XLM
Retrieve a Ledger's Effects Go (Pending) 50 XLM
List All Ledgers Go (Pending) 50 XLM
Transactions
Retrieve a Transaction Go (Pending) 50 XLM
Retrieve a Transaction's Operations Go (Pending) 50 XLM
Retrieve a Transaction's Effects Go (Pending) 50 XLM
List All Transactions Go (Pending) 50 XLM
Operations
Retrieve an Operation Go (Pending) 50 XLM
Retrieve an Operation's Effects Go (Pending) 50 XLM
List All Operations Go (Pending) 50 XLM
List All Payments Go (Pending) 50 XLM
Accounts
List All Accounts Go (Pending) 50 XLM
Retrieve an Account Go (Pending) 50 XLM
Retrieve an Account's Transactions Go (Pending) 50 XLM
Retrieve an Account's Operations Go (Pending) 50 XLM
Retrieve an Account's Payments Go (Pending) 50 XLM
Retrieve an Account's Effects Go (Pending) 50 XLM
Retrieve an Account's Offers Go (Pending) 50 XLM
Retrieve an Account's Trades Go (Pending) 50 XLM
Retrieve an Account's Data Go (Pending) 50 XLM
Offers
Retrieve an Offer Go (Pending) 50 XLM
List All Offers Go (Pending) 50 XLM
Trades
List All Trades Go (Pending) 50 XLM
Assets
List All Assets Go (Pending) 50 XLM
Claimable Balances
List Claimable Balances Go (Pending) 50 XLM
Retrieve a Claimable Balance Go (Pending) 50 XLM
Retrieve Transactions for a Claimable Balance Go (Pending) 50 XLM
Retrieve Operations for a Claimable Balance Go (Pending) 50 XLM
Order Books
Retrieve an Order Book Go (Pending) 50 XLM
Paths
List Strict Send Payment Paths Go (Pending) 50 XLM
List Strict Receive Payment Paths Go (Pending) 50 XLM
Trade Aggregations
List Trade Aggregations Go (Pending) 50 XLM
Fee Stats
Retrieve Fee Stats Go (Pending) 50 XLM

Million Lumen homepage

Link the bounty file

https://github.com/tyvdh/stellar-quest-bounties/blob/main/bounties/level-2/million-lumen-homepage.md

Mark your progress

  • ๐Ÿ”ตย  Started working
  • ๐ŸŸขย  Ready for review
  • ๐ŸŸฃย  Review completed

Provide relevant details

github repo : https://github.com/rahimklaber/MIllionLumenHomepage

I will be writing this in Kotlin/Js, so I'll have to create my own Kotlin type declarations of the Stellar SDK and albedo.

I 'm going to try to do this with only a front-end. If that doens't go well I'll add a back-end.

edit: hosted websited link : https://millionlumen.rahimklaber.me/

Stellar docs code snippet

Link the bounty file

https://github.com/tyvdh/stellar-quest-bounties/blob/main/bounties/level-1/stellar-docs-code-snippet.md

Mark your progress

  • ๐Ÿ”ตย  Started working
  • ๐ŸŸขย  Ready for review
  • ๐ŸŸฃย  Review completed

Stellar API Reference

Name Language Award Paid
List Strict Send Payment Paths Java: stellar/new-docs#480 50 XLM
List Strict Receive Payment Paths Java: stellar/new-docs#479 50 XLM
List Trade Aggregations Java: stellar/new-docs#477 50 XLM
Retrieve a Ledger Java: stellar/new-docs#512 50 XLM
List All Ledgers Java: stellar/new-docs#518 50 XLM
Retrieve a Ledger's Operations Java: stellar/new-docs#516 50 XLM
Retrieve a Ledger's Payments Java: stellar/new-docs#515 50 XLM
Retrieve a Ledger's Transactions Java: stellar/new-docs#514 50 XLM
Retrieve a Ledger's Effects Java: stellar/new-docs#517 50 XLM

Stellar Docs

Name Language Award Paid
Channels Java: stellar/new-docs#476 50 XLM

Stellar Quest badge checker

Link the bounty file

https://github.com/tyvdh/stellar-quest-bounties/blob/main/bounties/level-2/stellar-quest-badge-checker.md

Mark your progress

  • ๐Ÿ”ตย  Started working
  • ๐ŸŸขย  Ready for review
  • ๐ŸŸฃย  Review completed

I've been working on this bounty for a bit.

Here's the GH repo: https://github.com/ElliotFriend/sq-badge-checker

And here's a live site: https://badges.elliotfriend.com

Here's the basic idea:

  • You login with your albedo account, and your badges show up, alongside some details from the transaction.
  • You can export your badges (customized by a filter) into an image which has some verification data hidden in it with steganography.
  • The verification is essentially the opposite. Someone uploads the image file, and the app extracts the data and verifies the signature.

Particular Areas of Concern and Questions for Reviewers

  • I'm pretty new to React, and I'm quite sure I've built this in a clumsy way. I've managed to make things work, but what would likely be different if I were a react pro?
  • The steganography idea seems nice to me on first blush, but the compute power required by a client may make this an unrealistic approach. Plus, if the data could be damaged when uploading to website/emails/etc. (still testing that) it could defeat the whole purpose.
  • If I'm depending on an image to do the verification, what's to keep someone from photoshopping their own image to fake that they own all the badges?

Stellar Quest badge checker โ€“ WASM edition

Link the bounty file

https://github.com/tyvdh/stellar-quest-bounties/blob/main/bounties/level-2/stellar-quest-badge-checker.md

Mark your progress

  • ๐Ÿ”ตย  Started working
  • ๐ŸŸขย  Ready for review
  • ๐ŸŸฃย  Review completed

Basically I'm using my time procrastinating from uni to build a (simple?) proof of concept for this bounty using Rust and WASM.
I'm using trunk and yew to build the website (and I'm having fun with bindgen to link Albedo JS libs as well as using outdated Stellar Rust SDKs...).
The repo can be found here: https://github.com/Smephite/SQBadge-rs.
Not sure if I'll ever finish it, but yolo.

A WIP Demo can be found here: https://badge.kaibersz.in/ (hosted via gh pages which is nice)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.