Lock shares of NVDA, TSLA or any of 14 tokenized stocks for a developer. They are released when a GitHub milestone closes, a pull request merges or an issue is done, and not a block before.
Stocks are good for owning and awkward for paying. StockEscrow makes a share something you can promise: it sits in a contract, tied to a piece of work on GitHub, until the work is done or the deal runs out.
Type $5,000 and the card works out how many NVDA that is at the price Trigr's contract keeps for NVDA. That price follows the stock's USDG pool on Uniswap v4 but moves at most 1% per update, so nobody can bend it inside a single transaction to shrink your deal.
From then on the number of shares is fixed. If NVDA is up 10% on payday, the developer gets 10% more in dollars. The escrow records the dollar value at creation next to it so both sides can see how it moved.
When the developer clicks claim, the attestor fetches the escrow from the chain, asks GitHub's API about that exact repository and number, and signs an EIP-712 statement only if the condition holds. A milestone counts when it is closed with no open issues left. A pull request counts when it is merged. An issue counts when it is closed as completed, not as "won't fix".
The signature is bound to one escrow, one claim attempt and one day. It cannot be replayed on another escrow or reused after a veto.
This runs the same code the attestor runs. If it says met here, the attestor signs.
A signed claim does not pay anyone. It starts the veto window you chose at creation, 48 hours by default. If the milestone was closed with the login flow still broken, the funder disputes, writes why, and the escrow reopens for a fresh claim.
Once the window passes without a veto, anyone can release the shares, and they go to the payee address fixed at creation. So the worst a wrong attestor can do is start a claim the funder has to answer.
Read from the chain as this page loads. Values in today's dollars use the same price the escrows were stamped with.
| # | Amount | Paid to | When | State | |
|---|---|---|---|---|---|
| Reading the contract… | |||||
There is no admin withdrawal, no pause and no upgrade. The owner can change one thing: where the 0.25% payout fee goes. Each escrow pins its attestor when it is created, so no later change can alter who is trusted on a deal already made.
Only official stock tokens are accepted, the ones Trigr lists, each a proxy on Robinhood's own beacon. Copies with borrowed names and tickers are rejected by the contract, not just hidden by the page.
Because that is the point. A contractor paid in NVDA owns NVDA the moment it is released, with no trade to make and no spread to pay. The price moves in the meantime, both ways, and both sides can see by how much: the escrow keeps the dollar value from the day it was made.
Nothing on GitHub, which is why the veto window exists. If the developer owns the repository they can close a milestone whenever they like, the attestor will sign, and the funder then has the window to look and dispute. For tighter terms, point the escrow at a repository the funder controls, or at a pull request that has to be merged by the funder's team.
They can, and it is public. Each dispute and its reason are recorded on chain against the escrow, next to GitHub's evidence. The shares still cannot go anywhere but the payee or, after the deadline, back to the funder. Either side can offer a split at any time and the other can accept it.
This site runs it: a function that reads GitHub and signs with a key that holds no funds and never sends a transaction. If it goes away, open escrows are not stuck. The funder can still pay at any time, the payee can hand back, a split still works, and after the deadline the funder can refund.
The contract is unaudited. Tokenized stocks follow market hours in practice, so the price stamped on a weekend escrow can be a little stale. GitHub can rate-limit the attestor, which delays a claim but does not lose it. Nothing here is investment advice.
StockEscrow runs on Robinhood Chain (4663). Your wallet will be asked to add or switch to it.