Union JSON demo

Owned by simonw, visibility: Unlisted

SQL query
WITH blogmarks AS (
    SELECT 
        bb.id,
        bb.slug,
        bb.link_url,
        bb.link_title,
        bb.created,
        COALESCE(
            json_agg(DISTINCT bt.tag) FILTER (WHERE bt.tag IS NOT NULL),
            '[]'::json
        ) AS tags
    FROM 
        blog_blogmark bb
    LEFT JOIN 
        blog_blogmark_tags bbt ON bb.id = bbt.blogmark_id
    LEFT JOIN 
        blog_tag bt ON bbt.tag_id = bt.id
    GROUP BY 
        bb.id, bb.slug, bb.link_url, bb.link_title, bb.created
    ORDER BY 
        bb.created DESC
    LIMIT 20
),
entries AS (
    SELECT 
        be.id,
        be.title,
        be.slug,
        be.created,
        COALESCE(
            json_agg(DISTINCT bt.tag) FILTER (WHERE bt.tag IS NOT NULL),
            '[]'::json
        ) AS tags
    FROM 
        blog_entry be
    LEFT JOIN 
        blog_entry_tags bet ON be.id = bet.entry_id
    LEFT JOIN 
        blog_tag bt ON bet.tag_id = bt.id
    GROUP BY 
        be.id, be.title, be.slug, be.created
    ORDER BY 
        be.created DESC
    LIMIT 10
)
SELECT 
    'blogmarks' AS type,
    json_agg(
        json_build_object(
            'id', id,
            'slug', slug,
            'link_url', link_url,
            'link_title', link_title,
            'created', created,
            'tags', tags
        )
    ) AS rows
FROM 
    blogmarks

UNION ALL

SELECT 
    'entries' AS type,
    json_agg(
        json_build_object(
            'id', id,
            'title', title,
            'slug', slug,
            'created', created,
            'tags', tags
        )
    ) AS rows
FROM 
    entries

2 rows

type rows
blogmarks
[
  {
    "id": 9728,
    "slug": "how-we-took-over-chatgpt-accounts",
    "link_url": "https://www.parameter.ai/labs/we-found-a-gap-at-openai",
    "link_title": "How We Took Over ChatGPT Accounts",
    "created": "2026-10-31T23:15:22+00:00",
    "tags": [
      "chatgpt",
      "content-security-policy",
      "iframes",
      "javascript",
      "openai",
      "sandboxing",
      "security",
      "xss"
    ]
  },
  {
    "id": 9727,
    "slug": "nesformer",
    "link_url": "https://github.com/dbreunig/nesformer",
    "link_title": "dbreunig/nesformer",
    "created": "2026-10-30T21:59:22+00:00",
    "tags": [
      "ai",
      "conformance-suites",
      "drew-breunig",
      "games",
      "generative-ai",
      "llms",
      "qwen"
    ]
  },
  {
    "id": 9726,
    "slug": "api-credits",
    "link_url": "https://help.openai.com/en/articles/20001626-api-credits-benefit-for-eligible-chatgpt-subscriptions",
    "link_title": "API credits benefit for eligible ChatGPT subscriptions",
    "created": "2026-10-29T22:48:29+00:00",
    "tags": [
      "ai",
      "anthropic",
      "generative-ai",
      "llm-pricing",
      "llms",
      "openai"
    ]
  },
  {
    "id": 9725,
    "slug": "how-i-built-the-most-ai-pilled-company-in-the-world",
    "link_url": "https://twitter.com/jsnnsa/status/2115623382721126826",
    "link_title": "How I Built the Most AI-Pilled Company in the World",
    "created": "2026-10-29T17:00:26+00:00",
    "tags": [
      "agentic-engineering",
      "ai",
      "claude",
      "claude-mythos-fable",
      "coding-agents",
      "game-design",
      "generative-ai",
      "llms"
    ]
  },
  {
    "id": 9724,
    "slug": "github-octoverse-2026",
    "link_url": "https://github.blog/news-insights/octoverse/octoverse-commits-pushes-reach-new-highs-in-2026-as-developers-build-with-agents/",
    "link_title": "GitHub Octoverse 2026",
    "created": "2026-10-28T16:45:23+00:00",
    "tags": [
      "agentic-engineering",
      "ai",
      "coding-agents",
      "disclosures",
      "generative-ai",
      "github",
      "llms"
    ]
  },
  {
    "id": 9723,
    "slug": "game-boy-color-on-my-conference-badge",
    "link_url": "https://spf13.com/p/game-boy-color-on-my-conference-badge/",
    "link_title": "Game Boy Color on My Conference Badge",
    "created": "2026-10-27T19:34:18+00:00",
    "tags": [
      "ai",
      "games",
      "gemini",
      "generative-ai",
      "github",
      "hardware-hacking",
      "llms",
      "steve-francia"
    ]
  },
  {
    "id": 9722,
    "slug": "gpt-61-terra",
    "link_url": "https://openai.com/index/introducing-gpt-6-1-terra/",
    "link_title": "GPT-6.1 Terra",
    "created": "2026-10-26T23:53:07+00:00",
    "tags": [
      "ai",
      "generative-ai",
      "gpt",
      "llm-pricing",
      "llm-release",
      "llms",
      "openai",
      "pelican-riding-a-bicycle",
      "ted-sanders"
    ]
  },
  {
    "id": 9701,
    "slug": "kimi-k31-pro",
    "link_url": "https://www.kimi.ai/blog/kimi-k3-1-pro",
    "link_title": "Introducing Kimi K3.1 Pro",
    "created": "2026-10-23T19:40:54+00:00",
    "tags": [
      "ai",
      "ai-in-china",
      "generative-ai",
      "kimi",
      "llm",
      "llm-pricing",
      "llm-release",
      "llms",
      "moonshot",
      "pelican-riding-a-bicycle"
    ]
  },
  {
    "id": 9700,
    "slug": "de-staat-freedom",
    "link_url": "https://www.youtube.com/watch?v=hKO4pQtIXow",
    "link_title": "DE STAAT - FREEDOM (Official Music Video)",
    "created": "2026-10-22T19:42:26+00:00",
    "tags": [
      "ai",
      "generative-ai",
      "music",
      "pelican-riding-a-bicycle"
    ]
  },
  {
    "id": 9699,
    "slug": "donating-agent-skills",
    "link_url": "https://www.anthropic.com/news/donating-agent-skills-to-the-agentic-ai-foundation",
    "link_title": "Donating Agent Skills to the Agentic AI Foundation",
    "created": "2026-10-22T18:09:56+00:00",
    "tags": [
      "ai",
      "anthropic",
      "generative-ai",
      "llms",
      "model-context-protocol",
      "skills",
      "standards"
    ]
  },
  {
    "id": 9698,
    "slug": "php-security-release",
    "link_url": "https://thephp.foundation/blog/2026/10/21/todays-php-security-release-and-how-were-strengthening-php-security/",
    "link_title": "Today's PHP Security Release, and How We're Strengthening PHP Security",
    "created": "2026-10-21T18:41:53+00:00",
    "tags": [
      "ai",
      "ai-security-research",
      "open-source",
      "php",
      "security"
    ]
  },
  {
    "id": 9697,
    "slug": "panache",
    "link_url": "https://github.com/menufactory43/panache/",
    "link_title": "Panache \u2014 RTS Belle \u00c9poque pour mobile",
    "created": "2026-10-21T16:25:16+00:00",
    "tags": [
      "game-design",
      "open-source"
    ]
  },
  {
    "id": 9696,
    "slug": "emudhra-certificates",
    "link_url": "https://emudhra.we-have-a-problem.com",
    "link_title": "eMudhra Intermediate CA Compromise",
    "created": "2026-10-20T23:50:25+00:00",
    "tags": [
      "encryption",
      "https",
      "pip",
      "python",
      "security",
      "uv"
    ]
  },
  {
    "id": 9695,
    "slug": "my-obituary-for-programming",
    "link_url": "https://dumbmatter.com/2026/10/programming-obituary/",
    "link_title": "My obituary for programming",
    "created": "2026-10-19T23:58:25+00:00",
    "tags": [
      "ai",
      "careers",
      "coding-agents",
      "deep-blue",
      "generative-ai",
      "llms",
      "programming"
    ]
  },
  {
    "id": 9694,
    "slug": "document-currentscript",
    "link_url": "https://leanrada.com/notes/inline-rendering-currentscript/",
    "link_title": "Inline rendering with document\u200b.currentScript",
    "created": "2026-10-17T21:11:12+00:00",
    "tags": [
      "javascript"
    ]
  },
  {
    "id": 9693,
    "slug": "anthropic-tells-investors",
    "link_url": "https://www.ft.com/content/11632d03-358c-454b-af95-d06d4072932b?syn-25a6b1a6=1",
    "link_title": "Anthropic tells investors quarterly revenue up nearly 50% to $16.8bn ahead of IPO",
    "created": "2026-10-15T13:04:03+00:00",
    "tags": [
      "ai",
      "anthropic",
      "generative-ai",
      "llms"
    ]
  },
  {
    "id": 9692,
    "slug": "ai-is-mass-decompiling-games",
    "link_url": "https://popcar.bearblog.dev/ai-is-mass-decompiling-games-thats-both-awesome-and-scary/",
    "link_title": "AI is mass decompiling games. That's both awesome and scary.",
    "created": "2026-10-14T16:26:53+00:00",
    "tags": [
      "ai",
      "ai-ethics",
      "coding-agents",
      "computer-history",
      "game-design",
      "generative-ai",
      "llms",
      "webassembly"
    ]
  },
  {
    "id": 9691,
    "slug": "redesigning-source-control-at-anthropic",
    "link_url": "https://www.anthropic.com/engineering/redesigning-source-control",
    "link_title": "Redesigning source control at Anthropic",
    "created": "2026-10-13T23:00:06+00:00",
    "tags": [
      "agentic-engineering",
      "ai",
      "anthropic",
      "generative-ai",
      "git",
      "llms",
      "migrations",
      "version-control"
    ]
  },
  {
    "id": 9690,
    "slug": "python-actions",
    "link_url": "https://github.com/actions/python-versions/commit/49858b91c92d27403416ee43117032e91d00ce24",
    "link_title": "Python 3.15.0 added to actions/python-versions",
    "created": "2026-10-10T23:58:04+00:00",
    "tags": [
      "chatgpt",
      "github",
      "github-actions",
      "python"
    ]
  },
  {
    "id": 9689,
    "slug": "deno-is-joining-cloudflare",
    "link_url": "https://deno.com/blog/cloudflare",
    "link_title": "Deno is joining Cloudflare",
    "created": "2026-10-09T22:48:37+00:00",
    "tags": [
      "cloudfront",
      "deno",
      "javascript",
      "nodejs",
      "ryan-dahl",
      "sandboxing"
    ]
  }
]
entries
[
  {
    "id": 9568,
    "title": "The October inflection point for vibe game development",
    "slug": "vibe-game-development",
    "created": "2026-10-28T13:55:15+00:00",
    "tags": [
      "ai",
      "chatgpt",
      "claude",
      "claude-code",
      "game-design",
      "games",
      "generative-ai",
      "llms",
      "vibe-coding"
    ]
  },
  {
    "id": 9536,
    "title": "Battle Drones - a vibe coded RTS with audio-based multiplayer",
    "slug": "battledrones",
    "created": "2026-10-20T19:34:19+00:00",
    "tags": [
      "ai",
      "claude",
      "claude-code",
      "coding-agents",
      "game-design",
      "generative-ai",
      "llms",
      "projects",
      "vibe-coding"
    ]
  },
  {
    "id": 9535,
    "title": "Hello Python 3.15, goodbye 3.10, and now I can use 3.11",
    "slug": "python-3-15",
    "created": "2026-10-12T18:15:38+00:00",
    "tags": [
      "open-source",
      "profiling",
      "python",
      "sqlite",
      "uv"
    ]
  },
  {
    "id": 9508,
    "title": "A new feature for my blog, built using my voice",
    "slug": "built-using-my-voice",
    "created": "2026-10-09T12:54:06+00:00",
    "tags": [
      "ai",
      "codex",
      "coding-agents",
      "generative-ai",
      "llms",
      "newsletter",
      "openai",
      "site-upgrades",
      "speech-to-text",
      "text-to-speech"
    ]
  },
  {
    "id": 9507,
    "title": "Claude Haiku 5.5",
    "slug": "claude-haiku-5-5",
    "created": "2026-10-07T20:56:21+00:00",
    "tags": [
      "ai",
      "anthropic",
      "claude",
      "generative-ai",
      "llm-pricing",
      "llm-release",
      "llms",
      "pelican-riding-a-bicycle"
    ]
  },
  {
    "id": 9506,
    "title": "We're going to need default hard budget caps on pretty much everything",
    "slug": "default-hard-budget-caps",
    "created": "2026-10-03T23:34:02+00:00",
    "tags": [
      "ai",
      "amazon-web-services",
      "coding-agents"
    ]
  },
  {
    "id": 9505,
    "title": "OpenAI DevDay 2026 live blog",
    "slug": "openai-devday-2026-live-blog",
    "created": "2026-09-29T15:55:13+00:00",
    "tags": [
      "ai",
      "coding-agents",
      "generative-ai",
      "live-blog",
      "llms",
      "openai",
      "openai-devday"
    ]
  },
  {
    "id": 9504,
    "title": "2026 in LLMs (so far)",
    "slug": "2026-in-llms-so-far",
    "created": "2026-09-27T23:54:15+00:00",
    "tags": [
      "ai",
      "ai-security-research",
      "annotated-talks",
      "generative-ai",
      "llms",
      "openai-hugging-face-incident"
    ]
  },
  {
    "id": 9503,
    "title": "Claude Opus 5.5, GPT-6 Sol, GPT-6 Luna, and a new price war",
    "slug": "opus-and-sol-and-luna",
    "created": "2026-09-22T23:46:41+00:00",
    "tags": [
      "ai",
      "anthropic",
      "claude",
      "generative-ai",
      "gpt",
      "gpt-6-astra",
      "llm-pricing",
      "llm-release",
      "llms",
      "openai",
      "pelican-riding-a-bicycle"
    ]
  },
  {
    "id": 9502,
    "title": "Jev introduces a new shape of LLM - System One, aka Decision Models",
    "slug": "jev",
    "created": "2026-09-21T23:09:20+00:00",
    "tags": [
      "ai",
      "ai-bias",
      "evals",
      "generative-ai",
      "jev",
      "llms"
    ]
  }
]
Copy and export data

Duration: 45.76ms