返回 Discover
Field DispatchProduct Hunt2 · 2026-05-30

Wingbits AI

AI agents for real-time aircraft monitoring and alerts

Create agents that monitor airspace activity 24/7 - military aircraft in a region, private or government jets, a GPS-jamming spike, or a travelling friend or family member - and get alerts the moment something relevant happens. Or just ask anything about what's flying right now. Powered by our own independent network of 5,600+ antennas across 120 countries. No code, no data engineering, no terabytes to store.

日榜日期
2026-05-30
发布时间
2026/05/30
日榜排名
#2
票数
195
评论
38
评价
0
Human Signal

创始人 / Maker 评论

优先展示 Product Hunt 上对理解条目有帮助的人类文本。

Topics
APIArtificial IntelligenceMaps

How do you deal with coverage gaps or spoofed data, like do alerts include a confidence score based on nearby receivers?

评论作者信息不可用0 votes查看原评论
痛点分析发布于 2026/05/30

痛点为 AI 基于上游原始证据的初步提炼;未包含额外中国市场检索。

痛点

用户需要实时监控特定空域活动(如军用飞机、私人飞机、GPS干扰事件或亲友航班),但现有ADS-B数据流存在噪声、重复应答器ID和位置错误,导致准确状态同步困难。手动处理这些数据需要数据工程技能和大量存储,且覆盖密度不均造成延迟和可靠性差异,使得用户难以快速获得可靠警报,可能错过关键事件或收到误报,增加决策风险和协作成本。

Discussion

精选 Product Hunt 讨论

保留原始讨论语境,用来交叉验证上游条目的真实反馈。

I’m a station owner located in the UK (within 12 miles of London Luton Airport, 21 miles of London Stansted, and 40 miles from London City and London Heathrow) - so we see quite a large number of aircraft including those Low Altitude on the beginning/end of their journeys. Love being part of this project and knowing the data captured is powering awesome tools like this one! Looking forward to the future growth of the software. Well done to the dev team! 🙌👏

评论作者信息不可用筛选:高信号评论4 votes查看原评论

Building AI agents on top of live ADS-B data feeds is genuinely tricky since the message stream is noisy with duplicate transponder IDs and position errors. We've worked with high-frequency event streams in our own infrastructure and know how hard accurate state reconciliation can get. What's your approach to deduplicating transponder messages and handling geofence evaluation latency when multiple flights trigger alerts simultaneously?

评论作者信息不可用筛选:高信号评论4 votes查看原评论

Real-time ADS-B data processing at scale is genuinely hard. The fan-out problem for alert subscriptions when flight state changes happen fast is nontrivial. We've wrestled with similar event-driven architectures for customer health signals where latency matters. Are you processing raw Mode S data directly or using a provider like ADS-B Exchange? How do you handle alert deduplication when a flight triggers multiple geofence conditions simultaneously?

评论作者信息不可用筛选:高信号评论7 votes查看原评论

about the alert latency. ADS-B data has inherent delays depending on antenna coverage density and how quickly data gets aggregated. for something like a GPS jamming spike where timing actually matters, what's the realistic gap between an event happening and an alert reaching the user. and does coverage quality vary enough by region that some alerts are significantly more reliable than others

评论作者信息不可用筛选:高信号评论5 votes查看原评论
源数据· Raw Archive
source
Product Hunt
upstream_source
producthunt_api
upstream_item_id
1144576
daily_ranking_item_id
0e152ff3-d69b-42fc-8bbf-ec34ad199744
rank_date
2026-05-30
rank
2
name
Wingbits AI
tagline
AI agents for real-time aircraft monitoring and alerts
description
Create agents that monitor airspace activity 24/7 - military aircraft in a region, private or government jets, a GPS-jamming spike, or a travelling friend or family member - and get alerts the moment something relevant happens. Or just ask anything about what's flying right now. Powered by our own independent network of 5,600+ antennas across 120 countries. No code, no data engineering, no terabytes to store.
maker_comment
<p>How do you deal with coverage gaps or spoofed data, like do alerts include a confidence score based on nearby receivers?</p>
votes_count
195
comments_count
38
reviews_count
0
featured_at
2026-05-30T07:01:00.000Z
created_at_on_source
2026-05-30T07:01:00.000Z
makers
item-1item-2item-3item-4item-5item-6item-7item-8item-9item-10
topics
APIArtificial IntelligenceMaps
media / source-specific data
[
  {
    "url": "https://ph-files.imgix.net/279df08f-4128-4484-828d-e5601ef2d982.png?auto=format",
    "type": "image",
    "videoUrl": null
  },
  {
    "url": "https://ph-files.imgix.net/6e1c948a-3e2c-4cec-918d-32628be4acc3.png?auto=format",
    "type": "image",
    "videoUrl": null
  },
  {
    "url": "https://ph-files.imgix.net/ecb3bc79-6d61-4a8d-a493-6b04f7229b80.png?auto=format",
    "type": "image",
    "videoUrl": null
  },
  {
    "url": "https://ph-files.imgix.net/8520e72f-15e3-43e2-8135-ac74cdc8b268.png?auto=format",
    "type": "image",
    "videoUrl": null
  },
  {
    "url": "https://ph-files.imgix.net/3367a826-3ba2-44fd-a96c-e7f5d9bab5c9.jpeg?auto=format",
    "type": "video",
    "videoUrl": "https://www.youtube.com/watch?v=op12rGYP6LI"
  }
]
raw_payload
{
  "post_id": "1144576",
  "fetched_at": "2026-05-30T22:00:02.761Z",
  "has_post_detail": true,
  "snapshot_version": "producthunt_v1",
  "has_maker_comment": true,
  "maker_comment_source": "first_comment_fallback",
  "comments_fetch_status": "ok",
  "selected_comment_count": 5
}
source_raw_snapshot
{
  "id": "50e6ece1-8808-4ecb-b8b9-97532e21be7c",
  "daily_ranking_item_id": "0e152ff3-d69b-42fc-8bbf-ec34ad199744",
  "source": "producthunt_api",
  "product_hunt_id": "1144576",
  "fetched_at": "2026-05-30T22:00:02.761Z",
  "post_raw": {
    "id": "1144576",
    "url": "https://www.producthunt.com/products/wingbits-ai?utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
    "name": "Wingbits AI",
    "media": [
      {
        "url": "https://ph-files.imgix.net/279df08f-4128-4484-828d-e5601ef2d982.png?auto=format",
        "type": "image",
        "videoUrl": null
      },
      {
        "url": "https://ph-files.imgix.net/6e1c948a-3e2c-4cec-918d-32628be4acc3.png?auto=format",
        "type": "image",
        "videoUrl": null
      },
      {
        "url": "https://ph-files.imgix.net/ecb3bc79-6d61-4a8d-a493-6b04f7229b80.png?auto=format",
        "type": "image",
        "videoUrl": null
      },
      {
        "url": "https://ph-files.imgix.net/8520e72f-15e3-43e2-8135-ac74cdc8b268.png?auto=format",
        "type": "image",
        "videoUrl": null
      },
      {
        "url": "https://ph-files.imgix.net/3367a826-3ba2-44fd-a96c-e7f5d9bab5c9.jpeg?auto=format",
        "type": "video",
        "videoUrl": "https://www.youtube.com/watch?v=op12rGYP6LI"
      }
    ],
    "tagline": "AI agents for real-time aircraft monitoring and alerts",
    "thumbnail": {
      "url": "https://ph-files.imgix.net/a8a2bd70-3470-402a-8860-37961526e119.png?auto=format"
    },
    "votesCount": 195,
    "description": "Create agents that monitor airspace activity 24/7 - military aircraft in a region, private or government jets, a GPS-jamming spike, or a travelling friend or family member - and get alerts the moment something relevant happens. Or just ask anything about what's flying right now. Powered by our own independent network of 5,600+ antennas across 120 countries. No code, no data engineering, no terabytes to store."
  },
  "post_detail_raw": {
    "id": "1144576",
    "slug": "wingbits-ai",
    "user": {
      "id": "1880",
      "url": "https://www.producthunt.com/@benln?utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
      "name": "Ben Lang",
      "headline": "Cursor",
      "username": "benln",
      "websiteUrl": "http://www.benlang.me",
      "profileImage": "https://ph-avatars.imgix.net/1880/3dc00e80-198a-43d1-9129-a08c5d433001.jpeg?auto=format&crop=faces&fit=crop&h=original&w=original",
      "twitterUsername": "benln"
    },
    "media": [
      {
        "url": "https://ph-files.imgix.net/279df08f-4128-4484-828d-e5601ef2d982.png?auto=format",
        "type": "image",
        "videoUrl": null
      },
      {
        "url": "https://ph-files.imgix.net/6e1c948a-3e2c-4cec-918d-32628be4acc3.png?auto=format",
        "type": "image",
        "videoUrl": null
      },
      {
        "url": "https://ph-files.imgix.net/ecb3bc79-6d61-4a8d-a493-6b04f7229b80.png?auto=format",
        "type": "image",
        "videoUrl": null
      },
      {
        "url": "https://ph-files.imgix.net/8520e72f-15e3-43e2-8135-ac74cdc8b268.png?auto=format",
        "type": "image",
        "videoUrl": null
      },
      {
        "url": "https://ph-files.imgix.net/3367a826-3ba2-44fd-a96c-e7f5d9bab5c9.jpeg?auto=format",
        "type": "video",
        "videoUrl": "https://www.youtube.com/watch?v=op12rGYP6LI"
      }
    ],
    "makers": [
      {
        "id": "0",
        "url": "[REDACTED]",
        "name": "[REDACTED]",
        "headline": null,
        "username": "[REDACTED]",
        "websiteUrl": null,
        "profileImage": null,
        "twitterUsername": null
      },
      {
        "id": "0",
        "url": "[REDACTED]",
        "name": "[REDACTED]",
        "headline": null,
        "username": "[REDACTED]",
        "websiteUrl": null,
        "profileImage": null,
        "twitterUsername": null
      },
      {
        "id": "0",
        "url": "[REDACTED]",
        "name": "[REDACTED]",
        "headline": null,
        "username": "[REDACTED]",
        "websiteUrl": null,
        "profileImage": null,
        "twitterUsername": null
      },
      {
        "id": "0",
        "url": "[REDACTED]",
        "name": "[REDACTED]",
        "headline": null,
        "username": "[REDACTED]",
        "websiteUrl": null,
        "profileImage": null,
        "twitterUsername": null
      },
      {
        "id": "0",
        "url": "[REDACTED]",
        "name": "[REDACTED]",
        "headline": null,
        "username": "[REDACTED]",
        "websiteUrl": null,
        "profileImage": null,
        "twitterUsername": null
      },
      {
        "id": "0",
        "url": "[REDACTED]",
        "name": "[REDACTED]",
        "headline": null,
        "username": "[REDACTED]",
        "websiteUrl": null,
        "profileImage": null,
        "twitterUsername": null
      },
      {
        "id": "0",
        "url": "[REDACTED]",
        "name": "[REDACTED]",
        "headline": null,
        "username": "[REDACTED]",
        "websiteUrl": null,
        "profileImage": null,
        "twitterUsername": null
      },
      {
        "id": "0",
        "url": "[REDACTED]",
        "name": "[REDACTED]",
        "headline": null,
        "username": "[REDACTED]",
        "websiteUrl": null,
        "profileImage": null,
        "twitterUsername": null
      },
      {
        "id": "0",
        "url": "[REDACTED]",
        "name": "[REDACTED]",
        "headline": null,
        "username": "[REDACTED]",
        "websiteUrl": null,
        "profileImage": null,
        "twitterUsername": null
      },
      {
        "id": "0",
        "url": "[REDACTED]",
        "name": "[REDACTED]",
        "headline": null,
        "username": "[REDACTED]",
        "websiteUrl": null,
        "profileImage": null,
        "twitterUsername": null
      }
    ],
    "topics": {
      "edges": [
        {
          "node": {
            "id": "88",
            "name": "API",
            "slug": "api-1"
          }
        },
        {
          "node": {
            "id": "268",
            "name": "Artificial Intelligence",
            "slug": "artificial-intelligence"
          }
        },
        {
          "node": {
            "id": "308",
            "name": "Maps",
            "slug": "maps"
          }
        }
      ]
    },
    "website": "https://www.producthunt.com/r/YHETQGWHA4NYM6?utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
    "createdAt": "2026-05-30T07:01:00Z",
    "dailyRank": 2,
    "thumbnail": {
      "url": "https://ph-files.imgix.net/a8a2bd70-3470-402a-8860-37961526e119.png?auto=format",
      "type": "image",
      "videoUrl": null
    },
    "featuredAt": "2026-05-30T07:01:00Z",
    "weeklyRank": 28,
    "yearlyRank": null,
    "monthlyRank": 339,
    "scheduledAt": "2026-05-30T07:01:00Z",
    "productLinks": [
      {
        "url": "https://www.producthunt.com/r/TSOKPNUKJIQOP5?utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
        "type": "LinkedIn"
      },
      {
        "url": "https://www.producthunt.com/r/YHETQGWHA4NYM6?utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
        "type": "Website"
      },
      {
        "url": "https://www.producthunt.com/r/CRJ25FG3XLYL47?utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
        "type": "Website"
      },
      {
        "url": "https://www.producthunt.com/r/EHOKFUKWRNXQ5A?utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
        "type": "Twitter"
      },
      {
        "url": "https://www.producthunt.com/r/2AAQYT7PCZUJMI?utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
        "type": "Twitter"
      }
    ],
    "reviewsCount": 0,
    "commentsCount": 38,
    "reviewsRating": 0
  },
  "maker_comment_raw": {
    "id": "5412602",
    "url": "https://www.producthunt.com/products/wingbits-ai?comment=5412602&utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
    "body": "<p>How do you deal with coverage gaps or spoofed data, like do alerts include a confidence score based on nearby receivers?</p>",
    "user": {
      "id": "2422305",
      "url": "[REDACTED]",
      "name": "[REDACTED]",
      "headline": null,
      "username": "[REDACTED]",
      "profile_url": "[REDACTED]",
      "website_url": null,
      "profile_image": null,
      "twitter_username": null
    },
    "user_id": "2422305",
    "is_maker": false,
    "parent_id": null,
    "created_at": "2026-05-30T17:12:26Z",
    "replies_raw": [],
    "votes_count": 0
  },
  "selected_comments_raw": [
    {
      "id": "5412602",
      "url": "https://www.producthunt.com/products/wingbits-ai?comment=5412602&utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
      "body": "<p>How do you deal with coverage gaps or spoofed data, like do alerts include a confidence score based on nearby receivers?</p>",
      "user": {
        "id": "2422305",
        "url": "[REDACTED]",
        "name": "[REDACTED]",
        "headline": null,
        "username": "[REDACTED]",
        "profile_url": "[REDACTED]",
        "website_url": null,
        "profile_image": null,
        "twitter_username": null
      },
      "user_id": "2422305",
      "is_maker": false,
      "parent_id": null,
      "created_at": "2026-05-30T17:12:26Z",
      "replies_raw": [],
      "votes_count": 0,
      "selection_score": 127,
      "selection_reason": "first_comment_fallback"
    },
    {
      "id": "5412552",
      "url": "https://www.producthunt.com/products/wingbits-ai?comment=5412552&utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
      "body": "I’m a station owner located in the UK (within 12 miles of London Luton Airport, 21 miles of London Stansted, and 40 miles from London City and London Heathrow) - so we see quite a large number of aircraft including those Low Altitude on the beginning/end of their journeys. \nLove being part of this project and knowing the data captured is powering awesome tools like this one! Looking forward to the future growth of the software. \n\nWell done to the dev team! 🙌👏",
      "user": {
        "id": "9780785",
        "url": "[REDACTED]",
        "name": "[REDACTED]",
        "headline": null,
        "username": "[REDACTED]",
        "profile_url": "[REDACTED]",
        "website_url": null,
        "profile_image": null,
        "twitter_username": null
      },
      "user_id": "9780785",
      "is_maker": false,
      "parent_id": null,
      "created_at": "2026-05-30T16:14:49Z",
      "replies_raw": [],
      "votes_count": 4,
      "selection_score": 400,
      "selection_reason": "body_signal_score"
    },
    {
      "id": "5412158",
      "url": "https://www.producthunt.com/products/wingbits-ai?comment=5412158&utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
      "body": "<p>Building AI agents on top of live ADS-B data feeds is genuinely tricky since the message stream is noisy with duplicate transponder IDs and position errors. We've worked with high-frequency event streams in our own infrastructure and know how hard accurate state reconciliation can get. What's your approach to deduplicating transponder messages and handling geofence evaluation latency when multiple flights trigger alerts simultaneously?</p>",
      "user": {
        "id": "9825328",
        "url": "[REDACTED]",
        "name": "[REDACTED]",
        "headline": null,
        "username": "[REDACTED]",
        "profile_url": "[REDACTED]",
        "website_url": null,
        "profile_image": null,
        "twitter_username": null
      },
      "user_id": "9825328",
      "is_maker": false,
      "parent_id": null,
      "created_at": "2026-05-30T12:23:24Z",
      "replies_raw": [],
      "votes_count": 4,
      "selection_score": 400,
      "selection_reason": "body_signal_score"
    },
    {
      "id": "5412126",
      "url": "https://www.producthunt.com/products/wingbits-ai?comment=5412126&utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
      "body": "<p>Real-time ADS-B data processing at scale is genuinely hard. The fan-out problem for alert subscriptions when flight state changes happen fast is nontrivial. We've wrestled with similar event-driven architectures for customer health signals where latency matters. Are you processing raw Mode S data directly or using a provider like ADS-B Exchange? How do you handle alert deduplication when a flight triggers multiple geofence conditions simultaneously?</p>",
      "user": {
        "id": "8689236",
        "url": "[REDACTED]",
        "name": "[REDACTED]",
        "headline": null,
        "username": "[REDACTED]",
        "profile_url": "[REDACTED]",
        "website_url": null,
        "profile_image": null,
        "twitter_username": null
      },
      "user_id": "8689236",
      "is_maker": false,
      "parent_id": null,
      "created_at": "2026-05-30T12:04:46Z",
      "replies_raw": [],
      "votes_count": 7,
      "selection_score": 400,
      "selection_reason": "body_signal_score"
    },
    {
      "id": "5411975",
      "url": "https://www.producthunt.com/products/wingbits-ai?comment=5411975&utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
      "body": "<p>about the alert latency. ADS-B data has inherent delays depending on antenna coverage density and how quickly data gets aggregated. for something like a GPS jamming spike where timing actually matters, what's the realistic gap between an event happening and an alert reaching the user. and does coverage quality vary enough by region that some alerts are significantly more reliable than others</p>",
      "user": {
        "id": "9814309",
        "url": "[REDACTED]",
        "name": "[REDACTED]",
        "headline": null,
        "username": "[REDACTED]",
        "profile_url": "[REDACTED]",
        "website_url": null,
        "profile_image": null,
        "twitter_username": null
      },
      "user_id": "9814309",
      "is_maker": false,
      "parent_id": null,
      "created_at": "2026-05-30T10:29:08Z",
      "replies_raw": [],
      "votes_count": 5,
      "selection_score": 400,
      "selection_reason": "body_signal_score"
    }
  ],
  "topics_raw": [
    {
      "id": "88",
      "name": "API",
      "slug": "api-1"
    },
    {
      "id": "268",
      "name": "Artificial Intelligence",
      "slug": "artificial-intelligence"
    },
    {
      "id": "308",
      "name": "Maps",
      "slug": "maps"
    }
  ],
  "makers_raw": [
    {
      "id": "0",
      "url": "[REDACTED]",
      "name": "[REDACTED]",
      "headline": null,
      "username": "[REDACTED]",
      "profileUrl": "[REDACTED]",
      "websiteUrl": null,
      "profileImage": null,
      "twitterUsername": null
    },
    {
      "id": "0",
      "url": "[REDACTED]",
      "name": "[REDACTED]",
      "headline": null,
      "username": "[REDACTED]",
      "profileUrl": "[REDACTED]",
      "websiteUrl": null,
      "profileImage": null,
      "twitterUsername": null
    },
    {
      "id": "0",
      "url": "[REDACTED]",
      "name": "[REDACTED]",
      "headline": null,
      "username": "[REDACTED]",
      "profileUrl": "[REDACTED]",
      "websiteUrl": null,
      "profileImage": null,
      "twitterUsername": null
    },
    {
      "id": "0",
      "url": "[REDACTED]",
      "name": "[REDACTED]",
      "headline": null,
      "username": "[REDACTED]",
      "profileUrl": "[REDACTED]",
      "websiteUrl": null,
      "profileImage": null,
      "twitterUsername": null
    },
    {
      "id": "0",
      "url": "[REDACTED]",
      "name": "[REDACTED]",
      "headline": null,
      "username": "[REDACTED]",
      "profileUrl": "[REDACTED]",
      "websiteUrl": null,
      "profileImage": null,
      "twitterUsername": null
    },
    {
      "id": "0",
      "url": "[REDACTED]",
      "name": "[REDACTED]",
      "headline": null,
      "username": "[REDACTED]",
      "profileUrl": "[REDACTED]",
      "websiteUrl": null,
      "profileImage": null,
      "twitterUsername": null
    },
    {
      "id": "0",
      "url": "[REDACTED]",
      "name": "[REDACTED]",
      "headline": null,
      "username": "[REDACTED]",
      "profileUrl": "[REDACTED]",
      "websiteUrl": null,
      "profileImage": null,
      "twitterUsername": null
    },
    {
      "id": "0",
      "url": "[REDACTED]",
      "name": "[REDACTED]",
      "headline": null,
      "username": "[REDACTED]",
      "profileUrl": "[REDACTED]",
      "websiteUrl": null,
      "profileImage": null,
      "twitterUsername": null
    },
    {
      "id": "0",
      "url": "[REDACTED]",
      "name": "[REDACTED]",
      "headline": null,
      "username": "[REDACTED]",
      "profileUrl": "[REDACTED]",
      "websiteUrl": null,
      "profileImage": null,
      "twitterUsername": null
    },
    {
      "id": "0",
      "url": "[REDACTED]",
      "name": "[REDACTED]",
      "headline": null,
      "username": "[REDACTED]",
      "profileUrl": "[REDACTED]",
      "websiteUrl": null,
      "profileImage": null,
      "twitterUsername": null
    }
  ],
  "launch_metadata_raw": {
    "slug": "wingbits-ai",
    "daily_rank": 2,
    "featured_at": "2026-05-30T07:01:00Z",
    "website_url": "https://www.producthunt.com/r/YHETQGWHA4NYM6?utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
    "weekly_rank": 28,
    "yearly_rank": null,
    "monthly_rank": 339,
    "scheduled_at": "2026-05-30T07:01:00Z",
    "reviews_rating": 0,
    "created_at_on_product_hunt": "2026-05-30T07:01:00Z"
  },
  "stats_raw": {
    "votes_count": 195,
    "reviews_count": 0,
    "comments_count": 38,
    "reviews_rating": 0
  },
  "aux_raw": {
    "media_extended": [
      {
        "url": "https://ph-files.imgix.net/279df08f-4128-4484-828d-e5601ef2d982.png?auto=format",
        "type": "image",
        "videoUrl": null
      },
      {
        "url": "https://ph-files.imgix.net/6e1c948a-3e2c-4cec-918d-32628be4acc3.png?auto=format",
        "type": "image",
        "videoUrl": null
      },
      {
        "url": "https://ph-files.imgix.net/ecb3bc79-6d61-4a8d-a493-6b04f7229b80.png?auto=format",
        "type": "image",
        "videoUrl": null
      },
      {
        "url": "https://ph-files.imgix.net/8520e72f-15e3-43e2-8135-ac74cdc8b268.png?auto=format",
        "type": "image",
        "videoUrl": null
      },
      {
        "url": "https://ph-files.imgix.net/3367a826-3ba2-44fd-a96c-e7f5d9bab5c9.jpeg?auto=format",
        "type": "video",
        "videoUrl": "https://www.youtube.com/watch?v=op12rGYP6LI"
      }
    ],
    "submitter_user": {
      "id": "1880",
      "url": "https://www.producthunt.com/@benln?utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
      "name": "Ben Lang",
      "headline": "Cursor",
      "username": "benln",
      "profileUrl": "https://www.producthunt.com/@benln?utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
      "websiteUrl": "http://www.benlang.me",
      "profileImage": "https://ph-avatars.imgix.net/1880/3dc00e80-198a-43d1-9129-a08c5d433001.jpeg?auto=format&crop=faces&fit=crop&h=original&w=original",
      "twitterUsername": "benln"
    },
    "presentation_only": {
      "thumbnail_url": "https://ph-files.imgix.net/a8a2bd70-3470-402a-8860-37961526e119.png?auto=format",
      "product_hunt_url": "https://www.producthunt.com/products/wingbits-ai?utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
      "product_hunt_slug": "wingbits-ai"
    },
    "unused_upstream_fields": {
      "post_aux": {},
      "comments_aux": {},
      "post_detail_aux": {
        "media_raw": [
          {
            "url": "https://ph-files.imgix.net/279df08f-4128-4484-828d-e5601ef2d982.png?auto=format",
            "type": "image",
            "videoUrl": null
          },
          {
            "url": "https://ph-files.imgix.net/6e1c948a-3e2c-4cec-918d-32628be4acc3.png?auto=format",
            "type": "image",
            "videoUrl": null
          },
          {
            "url": "https://ph-files.imgix.net/ecb3bc79-6d61-4a8d-a493-6b04f7229b80.png?auto=format",
            "type": "image",
            "videoUrl": null
          },
          {
            "url": "https://ph-files.imgix.net/8520e72f-15e3-43e2-8135-ac74cdc8b268.png?auto=format",
            "type": "image",
            "videoUrl": null
          },
          {
            "url": "https://ph-files.imgix.net/3367a826-3ba2-44fd-a96c-e7f5d9bab5c9.jpeg?auto=format",
            "type": "video",
            "videoUrl": "https://www.youtube.com/watch?v=op12rGYP6LI"
          }
        ],
        "thumbnail_raw": {
          "url": "https://ph-files.imgix.net/a8a2bd70-3470-402a-8860-37961526e119.png?auto=format",
          "type": "image",
          "videoUrl": null
        },
        "presentation_only": {
          "product_hunt_slug": "wingbits-ai"
        },
        "product_links_raw": [
          {
            "url": "https://www.producthunt.com/r/TSOKPNUKJIQOP5?utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
            "type": "LinkedIn"
          },
          {
            "url": "https://www.producthunt.com/r/YHETQGWHA4NYM6?utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
            "type": "Website"
          },
          {
            "url": "https://www.producthunt.com/r/CRJ25FG3XLYL47?utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
            "type": "Website"
          },
          {
            "url": "https://www.producthunt.com/r/EHOKFUKWRNXQ5A?utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
            "type": "Twitter"
          },
          {
            "url": "https://www.producthunt.com/r/2AAQYT7PCZUJMI?utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
            "type": "Twitter"
          }
        ],
        "submitter_user_raw": {
          "id": "1880",
          "url": "https://www.producthunt.com/@benln?utm_campaign=producthunt-api&utm_medium=api-v2&utm_source=Application%3A+jingx+%28ID%3A+278031%29",
          "name": "Ben Lang",
          "headline": "Cursor",
          "username": "benln",
          "websiteUrl": "http://www.benlang.me",
          "profileImage": "https://ph-avatars.imgix.net/1880/3dc00e80-198a-43d1-9129-a08c5d433001.jpeg?auto=format&crop=faces&fit=crop&h=original&w=original",
          "twitterUsername": "benln"
        },
        "unused_upstream_fields": {}
      }
    }
  },
  "selection_meta": {
    "scoring_basis": "maker first, then non-maker body signal score with original order tie-break",
    "first_comment_id": "5412602",
    "comments_strategy": "maker_plus_top_discussion",
    "detail_fetch_status": "ok",
    "top_candidate_count": 14,
    "maker_comment_source": "first_comment_fallback",
    "comments_fetch_status": "ok",
    "dropped_comment_count": 9,
    "comments_fetched_limit": 25,
    "newest_candidate_count": 14,
    "selected_comment_count": 5,
    "candidate_comment_count": 14,
    "selected_comment_reasons": [
      {
        "id": "5412602",
        "score": 127,
        "reason": "first_comment_fallback"
      },
      {
        "id": "5412552",
        "score": 400,
        "reason": "body_signal_score"
      },
      {
        "id": "5412158",
        "score": 400,
        "reason": "body_signal_score"
      },
      {
        "id": "5412126",
        "score": 400,
        "reason": "body_signal_score"
      },
      {
        "id": "5411975",
        "score": 400,
        "reason": "body_signal_score"
      }
    ]
  },
  "created_at": "2026-05-30T22:00:08.440Z",
  "updated_at": "2026-05-30T22:00:08.440Z"
}