尚未收集儲存庫資訊。
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗Daily profit leaderboard for XO Market's markets and convictions. Who locked in the most today, who's racing ahead, and where you stand. One board for markets, one for convictions.
→ xo-maco-board.vercel.app · convictions: /#convictions
/#contest) shows while a contest is set in config.json.shares × (price − average entry). This matches XO's own figure to the cent. Fees are left out.flowchart LR
XO[(XO public API)] -->|every ~10 min| IDX[GitHub Action<br>scripts/build-board.mjs]
IDX -->|force-push| DATA[data branch<br>days.json + state.json]
DATA --> FN[api/data.js] --> PAGE[index.html]
PAGE -.->|data looks old| NUDGE[api/nudge.js] -.->|restart| IDX
The indexer, each run:
data/days.json, the only file the page reads. state.json keeps what was already read.node dev.mjs # http://localhost:8774, re-runs the indexer every 10 minutes
NO_REFRESH=1 node dev.mjs # serve only
The first build, or a rebuild, is thousands of requests, which Cloudflare blocks from GitHub's servers. Run it at home and publish it:
FULL=1 node scripts/build-board.mjs && scripts/publish.sh
api/ functions.board Action keep it fresh.GH_TOKEN env var in Vercel (fine-grained, Actions: read and write on this repo) lets api/nudge.js restart the Action
when GitHub skips its schedule, and lifts the GitHub API limit for api/data.js.REF at the top of the page script to your own referral link.config.json: windowDays is how many past days are (re)read, exclude lists usernames kept off the boards (XO's market maker), and contest (slug, url) names the XO contest behind the Contest view. Dates, prizes and rules come from XO. Remove it and the view goes away.
| Path | |
|---|---|
index.html | The whole site (static, no build step). |
scripts/build-board.mjs | The indexer (no dependencies). |
scripts/publish.sh | Pushes local data to the data branch by hand. |
.github/workflows/board.yml | Runs the indexer every ~10 min and publishes the data. |
api/data.js | Serves days.json from the data branch through the GitHub API (raw.githubusercontent caches files for 5 minutes). |
api/nudge.js | Restarts the Action when the data gets old. |
dev.mjs | Local preview server. |
marketScope=onlyClob includes Pulse rounds (market type 3); markets are type 2, convictions type 4 (onlyConviction)./markets/<id>/activity lists taker trades only. /markets/activities?marketScope=onlyConviction is one feed for all convictions
(the same call with onlyClob fails).Built by Andriy_shkinder for the XO community, from XO's public data.