{"id":68,"date":"2026-01-16T00:00:00","date_gmt":"2026-01-15T23:00:00","guid":{"rendered":"https:\/\/helloblog.io\/pl\/astro-dolacza-do-cloudflare-co-to-zmienia\/"},"modified":"2026-01-20T06:32:50","modified_gmt":"2026-01-20T05:32:50","slug":"astro-dolacza-do-cloudflare-co-to-zmienia","status":"publish","type":"post","link":"https:\/\/helloblog.io\/pl\/astro-dolacza-do-cloudflare-co-to-zmienia\/","title":{"rendered":"Astro do\u0142\u0105cza do Cloudflare: co to zmienia dla tw\u00f3rc\u00f3w stron i dokumentacji"},"content":{"rendered":"\n<p>Astro od kilku lat jest jednym z tych narz\u0119dzi, kt\u00f3re realnie upraszczaj\u0105 budowanie szybkich, \u201econtent-driven\u201d serwis\u00f3w (czyli stron, gdzie kluczowe s\u0105 tre\u015bci: landing page\u2019e, blogi, dokumentacje, marketing). Teraz Cloudflare og\u0142osi\u0142, \u017ce The Astro Technology Company (tw\u00f3rcy frameworka Astro) do\u0142\u0105cza do Cloudflare \u2014 a ca\u0142y etatowy zesp\u00f3\u0142 Astro przechodzi pod skrzyd\u0142a firmy.<\/p>\n\n\n\n<p>W praktyce to wa\u017cna wiadomo\u015b\u0107 dla ka\u017cdego, kto stawia strony na nowoczesnym stacku: od dokumentacji produktowej po serwisy firmowe. Cloudflare deklaruje, \u017ce podwaja zaanga\u017cowanie w rozw\u00f3j Astro, a jednocze\u015bnie podkre\u015bla, \u017ce projekt pozostaje open source na licencji MIT i ma dalej dzia\u0142a\u0107 w modelu otwartego governance (publiczny roadmap, wk\u0142ad spo\u0142eczno\u015bci).<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1800\" height=\"1013\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/8\/2026\/01\/BLOG-3112_1.png\" alt=\"Grafika og\u0142aszaj\u0105ca do\u0142\u0105czenie Astro do Cloudflare\" class=\"wp-image-67\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/8\/2026\/01\/BLOG-3112_1.png 1800w, https:\/\/helloblog.io\/app\/uploads\/sites\/8\/2026\/01\/BLOG-3112_1-300x169.png 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/8\/2026\/01\/BLOG-3112_1-1024x576.png 1024w, https:\/\/helloblog.io\/app\/uploads\/sites\/8\/2026\/01\/BLOG-3112_1-768x432.png 768w, https:\/\/helloblog.io\/app\/uploads\/sites\/8\/2026\/01\/BLOG-3112_1-1536x864.png 1536w, https:\/\/helloblog.io\/app\/uploads\/sites\/8\/2026\/01\/BLOG-3112_1-400x225.png 400w\" sizes=\"auto, (max-width: 1800px) 100vw, 1800px\" \/><figcaption class=\"wp-element-caption\">Cloudflare poinformowa\u0142, \u017ce zesp\u00f3\u0142 Astro do\u0142\u0105cza do firmy. \u2014 <em>Forr\u00e1s: Cloudflare Blog<\/em><\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Co w\u0142a\u015bciwie og\u0142oszono (i co z open source)?<\/h2>\n\n\n\n<p>W og\u0142oszeniu Cloudflare wybrzmiewaj\u0105 trzy kluczowe rzeczy:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><strong>Astro zostaje open source<\/strong>: licencja MIT, otwarte repozytorium, publiczny roadmap i otwarty model zarz\u0105dzania projektem.<\/li>\n\n\n<li><strong>Zesp\u00f3\u0142 si\u0119 nie rozp\u0142ywa<\/strong>: wszyscy full-time pracownicy Astro staj\u0105 si\u0119 pracownikami Cloudflare i dalej rozwijaj\u0105 framework.<\/li>\n\n\n<li><strong>Portowalno\u015b\u0107 zostaje<\/strong>: Astro by\u0142o projektowane jako \u201erun anywhere\u201d i wed\u0142ug deklaracji nic si\u0119 tu nie zmienia \u2014 dalej mo\u017cesz wdra\u017ca\u0107 na dowolnej chmurze i platformie.<\/li>\n\n<\/ul>\n\n\n\n<p>Dodatkowo Cloudflare podtrzymuje wsparcie dla ekosystemu poprzez Astro Ecosystem Fund (fundusz wspieraj\u0105cy rozw\u00f3j integracji i narz\u0119dzi). W aktualizacji wymieniono te\u017c partner\u00f3w z bran\u017cy, m.in. Webflow, Netlify, Wix, Sentry czy Stainless.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Dlaczego Astro zyska\u0142o tak\u0105 trakcj\u0119? (kr\u00f3tkie przypomnienie)<\/h2>\n\n\n\n<p>Na rynku framework\u00f3w frontendowych konkurencja jest brutalna. Astro wybi\u0142o si\u0119 nie dlatego, \u017ce pr\u00f3buje by\u0107 \u201ekolejnym wszystkim do wszystkiego\u201d, tylko dlatego, \u017ce trzyma si\u0119 jasno zdefiniowanych za\u0142o\u017ce\u0144 projektowych. W komunikacie Cloudflare powt\u00f3rzono pi\u0119\u0107 filar\u00f3w, kt\u00f3re dobrze streszczaj\u0105, czemu Astro pasuje do stron contentowych:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><strong>Content-driven<\/strong>: framework jest projektowany tak, \u017ceby tre\u015b\u0107 by\u0142a w centrum, a nie jako dodatek do aplikacji.<\/li>\n\n\n<li><strong>Server-first<\/strong>: generowanie HTML po stronie serwera jako domy\u015blna \u015bcie\u017cka do szybkiego renderu.<\/li>\n\n\n<li><strong>Fast by default<\/strong>: idea jest prosta \u2014 w Astro trudniej \u201eprzypadkiem\u201d zbudowa\u0107 woln\u0105 stron\u0119.<\/li>\n\n\n<li><strong>Easy to use<\/strong>: niski pr\u00f3g wej\u015bcia, sensowne domy\u015blne ustawienia.<\/li>\n\n\n<li><strong>Developer-focused<\/strong>: nacisk na ergonomi\u0119, dokumentacj\u0119 i praktyczne integracje.<\/li>\n\n<\/ul>\n\n\n\n<p>Do tego dochodzi <strong>Islands Architecture<\/strong> (architektura wysp): wi\u0119kszo\u015b\u0107 strony to statyczny HTML (lekki, szybki), a interaktywno\u015b\u0107 dorzucasz punktowo jako \u201ewyspy\u201d w konkretnych miejscach. Co istotne, wyspy mog\u0105 by\u0107 budowane w r\u00f3\u017cnych UI frameworkach \u2014 mo\u017cesz miesza\u0107 React, Vue, Svelte, Solid itd. na jednej stronie, je\u015bli ma to sens.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Astro + Cloudflare: dlaczego to ma sens w praktyce?<\/h2>\n\n\n\n<p>Cloudflare nie jest tu tylko \u201enowym w\u0142a\u015bcicielem\u201d. Z og\u0142oszenia wynika, \u017ce Astro ju\u017c dzi\u015b jest mocno obecne w \u015bwiecie platform budowanych na Cloudflare. Wymieniono m.in. Webflow Cloud i Wix Vibe, kt\u00f3re wykorzystuj\u0105 Astro do stron tworzonych przez swoich u\u017cytkownik\u00f3w i wdra\u017canych na ich platformach. Sam Cloudflare u\u017cywa Astro m.in. w developer docs, na stronach produktowych i w blogu.<\/p>\n\n\n\n<p>Wsp\u00f3lny mianownik jest do\u015b\u0107 prosty: szybkie strony oparte o tre\u015b\u0107, publikowane globalnie. Cloudflare ma sie\u0107 i runtime (Workers), Astro ma model budowania stron, kt\u00f3ry domy\u015blnie preferuje wydajno\u015b\u0107 i prostot\u0119. Dla os\u00f3b, kt\u00f3re sk\u0142adaj\u0105 dokumentacje, strony marketingowe czy portale tre\u015bciowe, to naturalne po\u0142\u0105czenie.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Astro 6: nowy dev server na Vite i \u201elokalnie jak na produkcji\u201d<\/h2>\n\n\n\n<p>Najbardziej konkretna cz\u0119\u015b\u0107 og\u0142oszenia dotyczy nadchodz\u0105cego <strong>Astro 6<\/strong>. Wed\u0142ug zapowiedzi najlepsza wersja Astro jest \u201etu\u017c za rogiem\u201d: publiczna beta Astro 6 jest ju\u017c dost\u0119pna, a wydanie GA ma pojawi\u0107 si\u0119 w kolejnych tygodniach.<\/p>\n\n\n\n<p>Najwi\u0119ksza zmiana techniczna to <strong>przeprojektowany serwer deweloperski<\/strong> oparty o <strong>Vite Environments API<\/strong>. W skr\u00f3cie: chodzi o to, \u017ceby kod uruchamiany lokalnie dzia\u0142a\u0142 w tym samym \u015brodowisku uruchomieniowym (runtime), w kt\u00f3rym dzia\u0142a na produkcji \u2014 o ile u\u017cywasz odpowiedniego pluginu.<\/p>\n\n\n\n<p>W kontek\u015bcie Cloudflare oznacza to, \u017ce je\u015bli odpalasz <code>astro dev<\/code> z <strong>Cloudflare Vite plugin<\/strong>, to lokalnie uruchamiasz kod w <strong>workerd<\/strong> (open-source runtime Cloudflare Workers). Dzi\u0119ki temu podczas developmentu mo\u017cesz korzysta\u0107 z binding\u00f3w i us\u0142ug Workers \u2014 takich jak Durable Objects, D1, KV czy Agents \u2014 bez rozje\u017cd\u017cania si\u0119 zachowania \u015brodowiska lokalnego i produkcyjnego.<\/p>\n\n\n\n<div class=\"wp-block-group callout callout-info is-style-info is-layout-flow wp-block-group-is-layout-flow\" style=\"border-width:1px;border-radius:8px;padding-top:1rem;padding-right:1.5rem;padding-bottom:1rem;padding-left:1.5rem\">\n\n<h4 class=\"wp-block-heading callout-title\">Dlaczego to jest wa\u017cne?<\/h4>\n\n\n<p>Najwi\u0119cej czasu w projektach full-stack zjadaj\u0105 r\u00f3\u017cnice mi\u0119dzy dev a prod: inne API runtime, inne ograniczenia, inne edge-case\u2019y. Je\u015bli dev server uruchamia kod w tym samym runtime co produkcja, \u0142atwiej wychwyci\u0107 problemy wcze\u015bniej.<\/p>\n\n<\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Jak przetestowa\u0107 Astro 6 (beta)?<\/h3>\n\n\n\n<p>Z komunikatu wynikaj\u0105 dwie proste \u015bcie\u017cki: start nowego projektu na ga\u0142\u0119zi \u201enext\u201d albo upgrade istniej\u0105cej aplikacji do bety.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly># Nowy projekt na kanale &quot;next&quot; (Astro 6 beta)\nnpm create astro@latest -- --ref next\n\n# Aktualizacja istniej\u0105cego projektu do wersji beta\nnpx @astrojs\/upgrade beta\n\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#6A737D\"># Nowy projekt na kanale \"next\" (Astro 6 beta)<\/span><\/span>\n<span class=\"line\"><span style=\"color:#B392F0\">npm<\/span><span style=\"color:#9ECBFF\"> create<\/span><span style=\"color:#9ECBFF\"> astro@latest<\/span><span style=\"color:#79B8FF\"> --<\/span><span style=\"color:#79B8FF\"> --ref<\/span><span style=\"color:#9ECBFF\"> next<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\"># Aktualizacja istniej\u0105cego projektu do wersji beta<\/span><\/span>\n<span class=\"line\"><span style=\"color:#B392F0\">npx<\/span><span style=\"color:#9ECBFF\"> @astrojs\/upgrade<\/span><span style=\"color:#9ECBFF\"> beta<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Live Content Collections: real-time dane bez rebuild\u00f3w (ju\u017c stabilne w Astro 6)<\/h2>\n\n\n\n<p>Druga du\u017ca zmiana: <strong>Live Content Collections<\/strong> w Astro \u2014 wed\u0142ug og\u0142oszenia \u2014 s\u0105 w Astro 6 stabilne (wychodz\u0105 z bety). Ten mechanizm jest ciekawy, bo celuje w typowy problem stron statycznych i hybrydowych: co zrobi\u0107, kiedy tre\u015b\u0107 lub dane zmieniaj\u0105 si\u0119 cz\u0119sto, a nie chcesz przebudowywa\u0107 ca\u0142ego serwisu.<\/p>\n\n\n\n<p>Live Content Collections maj\u0105 umo\u017cliwia\u0107 aktualizacj\u0119 danych w czasie rzeczywistym bez wymagania rebuilda, a jednocze\u015bnie zachowywa\u0107 zalety podej\u015bcia Astro: walidacj\u0119 danych i cache\u2019owanie, kt\u00f3re znasz z klasycznych content collections. W komunikacie pad\u0142 przyk\u0142ad inventory w sklepie \u2014 dane zmienne, ale nadal chcesz korzysta\u0107 z solidnych mechanizm\u00f3w walidacji i wydajno\u015bci.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">CSP, prostsze API i Zod 4 \u2014 co jeszcze dorzuca Astro 6?<\/h2>\n\n\n\n<p>Opr\u00f3cz serwera dev i Live Content Collections, Astro 6 ma te\u017c przynie\u015b\u0107 kilka istotnych usprawnie\u0144 wspomnianych wprost w og\u0142oszeniu:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><strong>First-class Content Security Policy (CSP)<\/strong>: wsparcie CSP jako funkcja \u201epierwszej klasy\u201d (to by\u0142a najbardziej plusowana pro\u015bba w projekcie).<\/li>\n\n\n<li><strong>Uproszczenia API<\/strong>: mniej tarcia w codziennym u\u017cyciu.<\/li>\n\n\n<li><strong>Upgrade do Zod 4<\/strong>: aktualizacja biblioteki Zod (popularna walidacja schemat\u00f3w w TypeScripcie\/JavaScripcie).<\/li>\n\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Co to oznacza dla developer\u00f3w buduj\u0105cych na WordPressie i w ekosystemie tre\u015bci?<\/h2>\n\n\n\n<p>Cho\u0107 komunikat nie dotyczy bezpo\u015brednio WordPressa, to w polskim \u015brodowisku webdev cz\u0119sto \u0142\u0105czymy \u015bwiaty: WordPress jako CMS i nowoczesny frontend jako warstwa prezentacji. Astro od dawna jest naturalnym kandydatem do podej\u015bcia typu headless lub hybrydowego (tre\u015b\u0107 z CMS-a, szybki rendering po stronie serwera, a interakcje tylko tam, gdzie trzeba).<\/p>\n\n\n\n<p>Je\u015bli Cloudflare faktycznie dowozi obietnic\u0119 \u201elokalnie jak na produkcji\u201d na Workers, to ro\u015bnie atrakcyjno\u015b\u0107 stacku: CMS (WordPress lub inny) + Astro jako warstwa stron + edge runtime tam, gdzie to ma sens. Warto te\u017c pami\u0119ta\u0107 o CSP: dla publicznych serwis\u00f3w contentowych to cz\u0119sto realny wym\u00f3g bezpiecze\u0144stwa, a nie mi\u0142y dodatek.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Podsumowanie: stabilno\u015b\u0107 projektu i mocniejszy kierunek na strony contentowe<\/h2>\n\n\n\n<p>Najwa\u017cniejszy przekaz z og\u0142oszenia jest pragmatyczny: Astro ma dalej rozwija\u0107 si\u0119 jako open source, a przej\u015bcie zespo\u0142u do Cloudflare ma zapewni\u0107 d\u0142ugoterminowe wsparcie i tempo dostarczania. R\u00f3wnolegle wchodzi Astro 6 z mocnym akcentem na ergonomi\u0119 developmentu (Vite Environments API) i funkcje potrzebne przy dynamicznych danych (Live Content Collections), plus poprawki z obszaru bezpiecze\u0144stwa (CSP) i narz\u0119dzi (Zod 4).<\/p>\n\n\n<div class=\"references-section\">\n                <h2>Odniesienia \/ \u0179r\u00f3d\u0142a<\/h2>\n                <ul class=\"references-list\"><li><a href=\"https:\/\/blog.cloudflare.com\/astro-joins-cloudflare\/\" target=\"_blank\" rel=\"noopener noreferrer\">Astro is joining Cloudflare<\/a><\/li><li><a href=\"https:\/\/astro.build\/\" target=\"_blank\" rel=\"noopener noreferrer\">Astro<\/a><\/li><li><a href=\"https:\/\/github.com\/withastro\/astro\/milestone\/37\" target=\"_blank\" rel=\"noopener noreferrer\">Astro 6 milestone<\/a><\/li><li><a href=\"https:\/\/github.com\/withastro\/astro\/releases\/tag\/astro%406.0.0-beta.0\" target=\"_blank\" rel=\"noopener noreferrer\">Astro 6 beta release (astro@6.0.0-beta.0)<\/a><\/li><li><a href=\"https:\/\/docs.astro.build\/en\/getting-started\/\" target=\"_blank\" rel=\"noopener noreferrer\">npm create astro@latest (Getting Started)<\/a><\/li><li><a href=\"https:\/\/astro.build\/blog\/astro-ecosystem-fund-update\/\" target=\"_blank\" rel=\"noopener noreferrer\">Astro Ecosystem Fund update<\/a><\/li><li><a href=\"https:\/\/developers.cloudflare.com\/cloudflare-for-platforms\/\" target=\"_blank\" rel=\"noopener noreferrer\">Cloudflare for Platforms<\/a><\/li><li><a href=\"https:\/\/webflow.com\/feature\/cloud\" target=\"_blank\" rel=\"noopener noreferrer\">Webflow Cloud feature page<\/a><\/li><li><a href=\"https:\/\/vibe.wix.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Wix Vibe<\/a><\/li><li><a href=\"https:\/\/astro.build\/blog\/stainless-astro-launch\/\" target=\"_blank\" rel=\"noopener noreferrer\">Starlight \/ Stainless launch post<\/a><\/li><li><a href=\"https:\/\/astro.build\/blog\/astro-6-beta\/\" target=\"_blank\" rel=\"noopener noreferrer\">Astro 6 beta announcement<\/a><\/li><li><a href=\"https:\/\/vite.dev\/guide\/api-environment\" target=\"_blank\" rel=\"noopener noreferrer\">Vite Environments API<\/a><\/li><li><a href=\"https:\/\/developers.cloudflare.com\/workers\/vite-plugin\/\" target=\"_blank\" rel=\"noopener noreferrer\">Cloudflare Workers Vite plugin<\/a><\/li><li><a href=\"https:\/\/github.com\/cloudflare\/workerd\" target=\"_blank\" rel=\"noopener noreferrer\">workerd (Cloudflare Workers runtime)<\/a><\/li><li><a href=\"https:\/\/developers.cloudflare.com\/durable-objects\/\" target=\"_blank\" rel=\"noopener noreferrer\">Durable Objects<\/a><\/li><li><a href=\"https:\/\/developers.cloudflare.com\/d1\/\" target=\"_blank\" rel=\"noopener noreferrer\">D1<\/a><\/li><li><a href=\"https:\/\/developers.cloudflare.com\/kv\/\" target=\"_blank\" rel=\"noopener noreferrer\">KV<\/a><\/li><li><a href=\"https:\/\/developers.cloudflare.com\/agents\/\" target=\"_blank\" rel=\"noopener noreferrer\">Agents<\/a><\/li><li><a href=\"https:\/\/developers.cloudflare.com\/workers\/runtime-apis\/bindings\/\" target=\"_blank\" rel=\"noopener noreferrer\">Workers bindings \/ runtime APIs<\/a><\/li><li><a href=\"https:\/\/docs.astro.build\/en\/reference\/experimental-flags\/live-content-collections\/\" target=\"_blank\" rel=\"noopener noreferrer\">Live Content Collections (experimental flags)<\/a><\/li><li><a href=\"https:\/\/v6.docs.astro.build\/en\/guides\/content-collections\" target=\"_blank\" rel=\"noopener noreferrer\">Content collections guide (v6 docs)<\/a><\/li><li><a href=\"https:\/\/zod.dev\/?id=introduction\" target=\"_blank\" rel=\"noopener noreferrer\">Zod introduction<\/a><\/li><li><a href=\"https:\/\/astro.build\/blog\/\" target=\"_blank\" rel=\"noopener noreferrer\">Astro blog<\/a><\/li><li><a href=\"https:\/\/astro.build\/chat\" target=\"_blank\" rel=\"noopener noreferrer\">Astro Discord<\/a><\/li><li><a href=\"https:\/\/workers.cloudflare.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Cloudflare Workers<\/a><\/li><li><a href=\"https:\/\/developers.cloudflare.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Cloudflare developer docs<\/a><\/li><\/ul>\n            <\/div>","protected":false},"excerpt":{"rendered":"<p>Cloudflare og\u0142osi\u0142, \u017ce zesp\u00f3\u0142 stoj\u0105cy za Astro do\u0142\u0105cza do firmy. Dla dev\u00f3w buduj\u0105cych szybkie strony contentowe to sygna\u0142: Astro ma dosta\u0107 jeszcze wi\u0119cej paliwa \u2014 a Astro 6 jest tu\u017c za rogiem.<\/p>\n","protected":false},"author":25,"featured_media":66,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[37],"tags":[38,50,39,41,40],"class_list":["post-68","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-frameworki","tag-astro","tag-cloudflare","tag-cloudflare-workers","tag-frontend","tag-vite"],"_links":{"self":[{"href":"https:\/\/helloblog.io\/pl\/wp-json\/wp\/v2\/posts\/68","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/helloblog.io\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/helloblog.io\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/helloblog.io\/pl\/wp-json\/wp\/v2\/users\/25"}],"replies":[{"embeddable":true,"href":"https:\/\/helloblog.io\/pl\/wp-json\/wp\/v2\/comments?post=68"}],"version-history":[{"count":1,"href":"https:\/\/helloblog.io\/pl\/wp-json\/wp\/v2\/posts\/68\/revisions"}],"predecessor-version":[{"id":128,"href":"https:\/\/helloblog.io\/pl\/wp-json\/wp\/v2\/posts\/68\/revisions\/128"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/helloblog.io\/pl\/wp-json\/wp\/v2\/media\/66"}],"wp:attachment":[{"href":"https:\/\/helloblog.io\/pl\/wp-json\/wp\/v2\/media?parent=68"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/helloblog.io\/pl\/wp-json\/wp\/v2\/categories?post=68"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/helloblog.io\/pl\/wp-json\/wp\/v2\/tags?post=68"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}