Catalogue
- Platform
- [x] Gitcoin
- Experience
- [x] Intermediate
- Category
- [x] Next.ID ProofService
- Time Commitment
- [x] 2 weeks
- Bounty Size
- [x] $3000
tl;dr: add a headless browser mechanism alongside current API-based proof post fetching channel.
Bounty Description
For now, proof_server
performs proof_post
fetching by API or single HTTP GET. But in real world, there may be no way for some platform
s to do this way. Including:
- No APIs at all provided by
platform
- API needs each user to do an
OAuth
to fetch their own data - API has very strict quota and will finally exceed if
proof_service
users grows. - User data cannot be fetched by single
HTTP GET
(e.g. JavaScript-drivenXHR
is performed in that page) - HTML DOM struct is changed frequently, can't define a fixed selector to query the data from DOM tree.
- Remote HTTP server has a strict anti-bot mechanism, single
HTTP GET
will be blocked in a short amount of time.
To make proof_server
supports more and more services later, we need a headless browser to simulate normal user's page-browsing flow.
Design goal
- The headless browser module can be kind of independent from current
proof_server
's code structure. With a simple wrapper,proof_server
can communicate with it in different processes. - The headless browser module will find user's proof post using single
regexp
, instead of parsing andcss-style
selecting DOM.
Winner Info
We will select up to 2 winners and each will receive at least $3000 as the winning prize.
Submission Info
Please make sure you read through our docs before starting your hacking. You will need to create a pr to this repo to submit your work.
Contact Info
@hominluo @nykma here or Telegram for any question regarding how to work on Next.ID.