<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Manpreet Brar</title>
    <description>The latest articles on DEV Community by Manpreet Brar (@manpreet_brar_264e408885a).</description>
    <link>https://dev.to/manpreet_brar_264e408885a</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4004749%2F5238c4f6-2689-4003-9946-b557445c438c.png</url>
      <title>DEV Community: Manpreet Brar</title>
      <link>https://dev.to/manpreet_brar_264e408885a</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/manpreet_brar_264e408885a"/>
    <language>en</language>
    <item>
      <title>How I built a real-time whale tracker for Polymarket using their public API</title>
      <dc:creator>Manpreet Brar</dc:creator>
      <pubDate>Mon, 13 Jul 2026 01:45:00 +0000</pubDate>
      <link>https://dev.to/manpreet_brar_264e408885a/how-i-built-a-real-time-whale-tracker-for-polymarket-using-their-public-api-3ja6</link>
      <guid>https://dev.to/manpreet_brar_264e408885a/how-i-built-a-real-time-whale-tracker-for-polymarket-using-their-public-api-3ja6</guid>
      <description>&lt;p&gt;Polymarket has a public data API that almost nobody talks about. I used it to build WhaleTrack — a live dashboard that tracks what the biggest traders on the platform are betting on.&lt;/p&gt;

&lt;p&gt;The stack:&lt;/p&gt;

&lt;p&gt;Vanilla JS frontend (no framework — just fast)&lt;br&gt;
Vercel serverless functions to proxy all API calls (avoids CORS, keeps keys server-side)&lt;br&gt;
Polymarket's data-api.polymarket.com for positions, leaderboard, and activity&lt;br&gt;
The interesting parts:&lt;/p&gt;

&lt;p&gt;The win rate calculation was tricky. Polymarket doesn't give you a clean "won/lost" field. You have to infer it:&lt;/p&gt;

&lt;p&gt;redeemable === true = won (market resolved in their favour)&lt;br&gt;
currentValue === 0 &amp;amp;&amp;amp; redeemable === false = lost&lt;br&gt;
Everything else = still open&lt;br&gt;
Also learned the hard way that slug (market-level) and eventSlug (event-level) are different things on Polymarket. Market slugs 404 on polymarket.com/event/. Took me longer than I'd like to admit to figure that out.&lt;/p&gt;

&lt;p&gt;Live at whaletrack.app — open to questions about the API or architecture.&lt;/p&gt;

</description>
      <category>polymarket</category>
      <category>javascript</category>
      <category>webdev</category>
      <category>buildinpublic</category>
    </item>
    <item>
      <title>How I built a real-time whale tracker for Polymarket using Node.js and a CLI</title>
      <dc:creator>Manpreet Brar</dc:creator>
      <pubDate>Sun, 05 Jul 2026 03:05:29 +0000</pubDate>
      <link>https://dev.to/manpreet_brar_264e408885a/how-i-built-a-real-time-whale-tracker-for-polymarket-using-nodejs-and-a-cli-862</link>
      <guid>https://dev.to/manpreet_brar_264e408885a/how-i-built-a-real-time-whale-tracker-for-polymarket-using-nodejs-and-a-cli-862</guid>
      <description>&lt;p&gt;The 2026 World Cup has $3.89 billion bet on it across Polymarket. That's not retail money — that's whales.&lt;/p&gt;

&lt;p&gt;I built WhaleTrack to track exactly what those big wallets are doing. Here's the stack:&lt;/p&gt;

&lt;p&gt;Backend: Node.js server fetching live data via Bullpen CLI&lt;br&gt;
Frontend: Vanilla JS, real-time updates&lt;br&gt;
Data: Polymarket CLOB API via Bullpen&lt;br&gt;
Analytics: Google Analytics for traffic tracking&lt;br&gt;
The hardest part wasn't the code — it was getting users. Pure SEO and content distribution (Reddit, Twitter, IH).&lt;/p&gt;

&lt;p&gt;The site is live at whaletrack.app — would love feedback from devs on the UX and performance.&lt;/p&gt;

&lt;p&gt;Happy to open source parts of it if there's interest.&lt;/p&gt;

</description>
      <category>buildinpublic</category>
      <category>polymarket</category>
      <category>cryptocurrency</category>
      <category>fintech</category>
    </item>
    <item>
      <title>How I Built a Real-Time Whale Tracker for Polymarket in a Weekend</title>
      <dc:creator>Manpreet Brar</dc:creator>
      <pubDate>Sun, 28 Jun 2026 18:05:09 +0000</pubDate>
      <link>https://dev.to/manpreet_brar_264e408885a/how-i-built-a-real-time-whale-tracker-for-polymarket-in-a-weekend-36gc</link>
      <guid>https://dev.to/manpreet_brar_264e408885a/how-i-built-a-real-time-whale-tracker-for-polymarket-in-a-weekend-36gc</guid>
      <description>&lt;p&gt;Prediction markets just hit $3.6B in volume. I wanted to know what the biggest traders were betting on — in real time. So I built WhaleTrack.&lt;/p&gt;

&lt;p&gt;Here's how it works under the hood.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Problem
&lt;/h2&gt;

&lt;p&gt;Polymarket has a public leaderboard. But it only shows P&amp;amp;L totals — not what whales are currently betting on, not their recent activity, not their win rate. If you want to follow smart money, you're flying blind.&lt;/p&gt;

&lt;p&gt;I wanted something that answered: what are the top traders doing right now?&lt;/p&gt;

&lt;h2&gt;
  
  
  The Stack
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Vanilla JS frontend (no framework, keeps it fast)&lt;/li&gt;
&lt;li&gt;Vercel serverless function as a backend proxy (avoids CORS issues)&lt;/li&gt;
&lt;li&gt;Polymarket's public data API — no auth required&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Step 1: Finding the Whales
&lt;/h2&gt;

&lt;p&gt;Polymarket exposes a leaderboard endpoint:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://data-api.polymarket.com/v1/leaderboard?limit=20" rel="noopener noreferrer"&gt;https://data-api.polymarket.com/v1/leaderboard?limit=20&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This returns traders ranked by P&amp;amp;L. I pull the top 10, grab their wallet addresses, and that's my whale list.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 2: Fetching Live Activity
&lt;/h2&gt;

&lt;p&gt;For each whale wallet, I hit:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://data-api.polymarket.com/activity?user=%7Baddress%7D&amp;amp;limit=20" rel="noopener noreferrer"&gt;https://data-api.polymarket.com/activity?user={address}&amp;amp;limit=20&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This returns their recent trades — market name, size in USDC, timestamp. Refreshes every 60 seconds.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 3: Calculating Win Rate (the tricky part)
&lt;/h2&gt;

&lt;p&gt;The key is the redeemable flag — redeemable: true means they won, currentValue: 0 + redeemable: false means they lost. Took a few wrong attempts with cashPnl (always negative, not useful).&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 4: The Whale Alert Banner
&lt;/h2&gt;

&lt;p&gt;Every 60 seconds I check for trades over $5,000 placed in the last 10 minutes. When it fires, a green banner slides down with the whale name, market, and amount. Auto-dismisses after 12 seconds. First time I saw it fire live with a $28K bet — genuinely exciting.&lt;/p&gt;

&lt;h2&gt;
  
  
  Results
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;129+ users in the first few days&lt;/li&gt;
&lt;li&gt;Zero ad spend&lt;/li&gt;
&lt;li&gt;Traffic from Twitter, Reddit, Quora&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What's Next
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;More whale wallets (suggestions welcome)&lt;/li&gt;
&lt;li&gt;Click-through to open the same market on Polymarket directly&lt;/li&gt;
&lt;li&gt;Email/push alerts for big trades&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Check it out: whaletrack.app&lt;/p&gt;

&lt;p&gt;All feedback welcome — especially if you spot a whale I'm missing.&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>webdev</category>
      <category>buildinpublic</category>
      <category>api</category>
    </item>
    <item>
      <title>I built a free whale tracker for Polymarket — here's what I learned</title>
      <dc:creator>Manpreet Brar</dc:creator>
      <pubDate>Sat, 27 Jun 2026 03:16:11 +0000</pubDate>
      <link>https://dev.to/manpreet_brar_264e408885a/i-built-a-free-whale-tracker-for-polymarket-heres-what-i-learned-21bi</link>
      <guid>https://dev.to/manpreet_brar_264e408885a/i-built-a-free-whale-tracker-for-polymarket-heres-what-i-learned-21bi</guid>
      <description>&lt;p&gt;The problem: I kept missing big moves on Polymarket because I had no way to see what the biggest traders were betting on in real time.&lt;/p&gt;

&lt;p&gt;So I built WhaleTrack — a free, no-signup tool that shows you exactly what top Polymarket whales are buying and selling.&lt;/p&gt;

&lt;h2&gt;
  
  
  What it does
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Live whale activity feed&lt;/strong&gt; — see the last 40 trades from top wallets, updated on refresh&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Whale leaderboard&lt;/strong&gt; — P&amp;amp;L, win rate, trade count for the biggest accounts&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No login, no ads, no fluff&lt;/strong&gt; — just the data&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  How it works
&lt;/h2&gt;

&lt;p&gt;The whole thing is vanilla HTML/CSS/JS deployed on Vercel with two serverless functions:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;code&gt;/api/whales.js&lt;/code&gt;&lt;/strong&gt; — hits the Polymarket leaderboard API, fetches position stats for each whale, calculates win rates from closed positions&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;code&gt;/api/activity.js&lt;/code&gt;&lt;/strong&gt; — pulls recent trades for each whale wallet in parallel, filters out internal combo transactions (no title / zero price), and returns the 40 most recent trades&lt;/p&gt;

&lt;p&gt;The serverless layer solves CORS — Polymarket's data API doesn't allow browser requests, so everything goes server-side.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tech stack
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Frontend: Vanilla HTML/CSS/JS (zero dependencies)&lt;/li&gt;
&lt;li&gt;Backend: Vercel serverless functions&lt;/li&gt;
&lt;li&gt;Data: Polymarket public data API&lt;/li&gt;
&lt;li&gt;Deploy: Vercel (free tier)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Biggest lesson
&lt;/h2&gt;

&lt;p&gt;Filtering bad data is half the work. The raw API returns combo trades and internal transactions that show up as "Unknown Market @ 0¢" — useless noise. Had to figure out which fields to check (title, price &amp;gt; 0) to strip them.&lt;/p&gt;

&lt;p&gt;Also: win rate calculation is tricky when most whales have unrealized profits. Showing "—" instead of 0% is more honest.&lt;/p&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://whaletrack.app" rel="noopener noreferrer"&gt;WhaleTrack →&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Also launched on Product Hunt today if you want to show some love: &lt;a href="https://www.producthunt.com/posts/whaletrack" rel="noopener noreferrer"&gt;Product Hunt&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Built this in a weekend. Happy to answer questions about the Polymarket API or Vercel serverless setup.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
      <category>startup</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
