{
  "version": "https://jsonfeed.org/version/1.1",
  "title": "Zeno · caderno de estudos",
  "home_page_url": "https://zeno.blog.br/",
  "feed_url": "https://zeno.blog.br/feed.json",
  "description": "O caderno de estudos do Zeno, engenheiro de software: o que aprendo construindo — backend, front, apps e o que aparecer no caminho.",
  "language": "pt-BR",
  "icon": "https://zeno.blog.br/perfil.webp",
  "favicon": "https://zeno.blog.br/favicon.svg",
  "authors": [
    {
      "name": "Zeno",
      "url": "https://zeno.dev.br/sobre"
    }
  ],
  "items": [
    {
      "id": "https://zeno.blog.br/posts/circunflexo-cormorant/",
      "url": "https://zeno.blog.br/posts/circunflexo-cormorant/",
      "title": "Cormorant Garamond e o circunflexo fora do lugar",
      "summary": "Uma fonte linda no Google Fonts que entorta o \"ê\" e o \"ô\" em títulos grandes — e como testar acento antes de escolher fonte.",
      "content_text": "Uma fonte linda no Google Fonts que entorta o \"ê\" e o \"ô\" em títulos grandes — e como testar acento antes de escolher fonte.",
      "date_published": "2026-11-15T00:00:00.000Z",
      "tags": [
        "tipografia",
        "css",
        "fontes"
      ],
      "_zeno": {
        "tipo": "til",
        "minutos_de_leitura": 1,
        "trilha": "web"
      }
    },
    {
      "id": "https://zeno.blog.br/posts/fixed-preso-no-cabecalho/",
      "url": "https://zeno.blog.br/posts/fixed-preso-no-cabecalho/",
      "title": "O menu fixo que ficou preso no cabeçalho",
      "summary": "backdrop-filter, filter e transform viram a referência dos filhos com position fixed. O menu de tela cheia virou uma faixa de 64px.",
      "content_text": "backdrop-filter, filter e transform viram a referência dos filhos com position fixed. O menu de tela cheia virou uma faixa de 64px.",
      "date_published": "2026-11-15T00:00:00.000Z",
      "tags": [
        "css",
        "front-end",
        "react"
      ],
      "_zeno": {
        "tipo": "til",
        "minutos_de_leitura": 1,
        "trilha": "web"
      }
    },
    {
      "id": "https://zeno.blog.br/posts/por-que-um-caderno-de-estudos/",
      "url": "https://zeno.blog.br/posts/por-que-um-caderno-de-estudos/",
      "title": "Por que um caderno de estudos em público",
      "summary": "O que vai ter aqui, como está organizado e o combinado que faço comigo mesmo para não largar no terceiro post.",
      "content_text": "O que vai ter aqui, como está organizado e o combinado que faço comigo mesmo para não largar no terceiro post.",
      "date_published": "2026-11-15T00:00:00.000Z",
      "tags": [
        "estudos",
        "escrita"
      ],
      "_zeno": {
        "tipo": "artigo",
        "minutos_de_leitura": 3
      }
    },
    {
      "id": "https://zeno.blog.br/posts/site-estatico-cloudflare-registro-br/",
      "url": "https://zeno.blog.br/posts/site-estatico-cloudflare-registro-br/",
      "title": "Do registro.br à Cloudflare: site estático sem mensalidade",
      "summary": "O roteiro que uso em todo site de cliente — domínio, DNS, Worker de assets e o que conferir antes de divulgar.",
      "content_text": "O roteiro que uso em todo site de cliente — domínio, DNS, Worker de assets e o que conferir antes de divulgar.",
      "date_published": "2026-11-15T00:00:00.000Z",
      "tags": [
        "cloudflare",
        "dns",
        "deploy",
        "registro.br"
      ],
      "_zeno": {
        "tipo": "artigo",
        "minutos_de_leitura": 3,
        "trilha": "web",
        "serie": {
          "id": "do-zero-ao-ar",
          "parte": 1
        }
      }
    },
    {
      "id": "https://zeno.blog.br/posts/spa-previa-de-link/",
      "url": "https://zeno.blog.br/posts/spa-previa-de-link/",
      "title": "SPA, WhatsApp e a prévia de link que não aparece",
      "summary": "Crawler de link não roda JavaScript. Como gerar um HTML por rota no build do Vite e fazer a foto certa aparecer.",
      "content_text": "Crawler de link não roda JavaScript. Como gerar um HTML por rota no build do Vite e fazer a foto certa aparecer.",
      "date_published": "2026-11-15T00:00:00.000Z",
      "tags": [
        "vite",
        "seo",
        "react",
        "open-graph"
      ],
      "_zeno": {
        "tipo": "artigo",
        "minutos_de_leitura": 2,
        "trilha": "web",
        "serie": {
          "id": "do-zero-ao-ar",
          "parte": 2
        }
      }
    },
    {
      "id": "https://zeno.blog.br/posts/wa-me-no-desktop/",
      "url": "https://zeno.blog.br/posts/wa-me-no-desktop/",
      "title": "Por que o wa.me fecha a aba no computador",
      "summary": "O botão de WhatsApp que funciona no celular e some no desktop — e o link que resolve.",
      "content_text": "O botão de WhatsApp que funciona no celular e some no desktop — e o link que resolve.",
      "date_published": "2026-11-15T00:00:00.000Z",
      "tags": [
        "whatsapp",
        "windows",
        "front-end"
      ],
      "_zeno": {
        "tipo": "til",
        "minutos_de_leitura": 1,
        "trilha": "web"
      }
    }
  ]
}