Who: Mariusz Szatkowski, senior Astro developer with 20+ years of web development experience, specializing in island architecture, zero-JS-by-default websites, and high-performance static site generation deployed to Cloudflare Pages.
What: Custom Astro development, island architecture, Content Collections, MDX, headless CMS integration, migration from WordPress and Next.js, Core Web Vitals optimization, and AI/GEO visibility engineering.
Where: Based in Gdynia, Poland, serving clients worldwide with full remote delivery and Central European timezone availability.
How much:
- New Astro website: individual quote (3-6 weeks)
- Migration from WordPress/Next.js: individual quote (2-5 weeks)
- Performance optimization audit: individual quote (1-2 weeks)
- Headless CMS integration: individual quote (2-4 weeks)
- Ongoing maintenance retainer: individual quote
- Free initial consultation
Astro developer - building the web with island architecture
The web development industry reached a turning point. For years, the answer to every website project was WordPress, and later React or Next.js. These tools solved real problems, but they introduced a new one: JavaScript overhead that makes pages slow, hosting costs that scale unpredictably, and rendering complexity that creates security surface area. Astro was designed to solve exactly these problems, and after years of working with every major web framework, I consider it the most important architectural advancement for content-driven websites in the past decade.
I am an experienced Astro developer offering end-to-end services: from greenfield projects and platform migrations to performance audits and headless CMS integrations. My clients achieve PageSpeed scores of 95-100 in production, not as a benchmark curiosity but as a stable baseline that directly influences their Google rankings, AI search visibility, and user conversion rates.
What makes Astro different from every other framework
Astro ships zero JavaScript to the browser by default. That single design decision separates it from every other modern framework and explains why Astro sites consistently outperform WordPress, Next.js, and Gatsby in Core Web Vitals benchmarks. When there is nothing to parse, compile, or execute on the client, pages simply load faster.
The island architecture takes this further. Rather than choosing between a fully static site (fast but limited) and a fully hydrated React app (flexible but heavy), Astro lets you mix both approaches at the component level. The navigation, hero section, blog posts, and footer are pure static HTML. The contact form, price calculator, or interactive map is a React or Vue island that hydrates only when it enters the viewport or receives user interaction. Visitors get a site that loads in under a second, and you get the full power of component-based development.
Zero JS by default
Every Astro page ships pure HTML and CSS unless you explicitly add an interactive island. No runtime overhead, no hydration cost, no JavaScript parsing delay on mobile.
Island architecture
Interactive components hydrate independently and on demand. React, Svelte, or Vue islands coexist on the same page without blocking each other or the rest of the document.
Content Collections
Type-safe content management with Zod schema validation. Write in Markdown or MDX, query with TypeScript, and get compile-time errors for missing or malformed content.
Edge deployment
Cloudflare Pages serves your Astro site from 300+ edge locations worldwide. Global latency under 50ms, automatic SSL, DDoS protection, and zero-config CDN included.
Astro versus WordPress
WordPress powers over 40% of the web, but its PHP rendering engine, plugin architecture, and database-driven page generation create performance ceilings that caching plugins can only partially overcome. Even a well-optimized WordPress site with WP Rocket, object caching, and a CDN typically scores 60-80 on PageSpeed mobile. An Astro site starts at 95-100 and stays there.
WordPress is the right tool for teams that need a non-technical editorial interface and a large plugin ecosystem. For businesses prioritizing performance, developer experience, and long-term maintainability, Astro is the superior choice. I perform WordPress migrations with full content preservation, URL mapping, and structured data transfer.
Astro versus Next.js
Next.js is an excellent framework for complex React applications with heavy client-side interactivity. For content-driven websites, landing pages, blogs, and marketing sites, it ships more JavaScript than necessary. A typical Next.js page includes the React runtime, the Next.js router, and component hydration code that runs on every page load regardless of interactivity requirements.
Astro’s output is leaner by design. The same landing page that weighs 400 KB in Next.js weighs 40 KB in Astro. That difference compounds across every page, every visitor, and every mobile device on a slow connection.
Astro development services
New website development from scratch
I design and build complete Astro websites from concept to deployment. The process starts with a technical specification covering content architecture, component library, page templates, routing strategy, and deployment pipeline. Development follows component-driven methodology with design tokens, a shared Tailwind CSS configuration, and reusable Astro components for headers, footers, cards, and interactive sections.
Every new project includes:
- Astro 5.x with Content Collections and type-safe frontmatter schemas
- Tailwind CSS 4 with custom design tokens matched to your brand
- TypeScript across all components and pages
- Cloudflare Pages deployment with staging and production environments
- GitHub Actions CI/CD with preview deployments for pull requests
- Schema.org structured data (Organization, WebSite, BreadcrumbList, Article)
- Open Graph and Twitter Card meta tags for social sharing
- Automatic sitemap generation and robots.txt configuration
- Web Vitals monitoring and Lighthouse CI integration
Migration from WordPress, Next.js, and Webflow
Platform migration is one of the highest-ROI investments a website can make. Moving from WordPress to Astro typically yields a 40-60% improvement in PageSpeed scores, a reduction in monthly hosting costs, and elimination of the security risks associated with plugin-heavy WordPress installations.
My migration process is methodical and zero-loss:
- Content audit - complete inventory of existing pages, posts, custom post types, media, and redirects
- URL mapping - every existing URL maps to its new Astro equivalent with 301 redirects configured at the Cloudflare level
- Content migration - posts and pages converted to Markdown or MDX with frontmatter, images optimized and converted to modern formats
- Structured data transfer - all existing Schema.org markup preserved and improved
- Performance benchmarking - PageSpeed scores, Core Web Vitals, and TTFB measured before and after
- Soft launch - traffic shifted gradually with monitoring in place for crawl errors and ranking movements
Headless CMS integration
Astro works directly with every major headless CMS. I integrate Sanity, Contentful, Hygraph, Storyblok, and DatoCMS with Astro sites, giving editorial teams a visual content management interface while the published output remains static HTML served from the edge.
The headless architecture separates content management concerns from rendering concerns. Your editors work in a purpose-built CMS with live preview, structured content models, and media management. Your visitors receive pre-rendered HTML that loads in milliseconds. I configure incremental static regeneration and on-demand revalidation so new content publishes within seconds of editorial approval.
Content Collections and MDX development
Astro’s Content Collections API is the most developer-friendly content management system for code-adjacent teams. I build collections with strict Zod schemas that enforce frontmatter structure, validate dates and URLs, and catch missing required fields at build time rather than runtime.
MDX extends Markdown with React component support, enabling rich interactive content within standard document files. I build MDX setups with custom component libraries: callout boxes, code blocks with syntax highlighting, comparison tables, interactive charts, and embedded demos. Content authors write in familiar Markdown syntax while retaining access to rich component-based layouts.
Performance optimization and Core Web Vitals
Already running an Astro site but not hitting 100/100 on PageSpeed? I perform detailed performance audits covering:
- Image optimization: WebP/AVIF conversion, responsive srcset attributes, lazy loading configuration, aspect ratio preservation to prevent CLS
- Font loading strategy:
font-display: swap, preload hints, subsetting, and self-hosting for eliminated third-party font latency - CSS optimization: Tailwind purging, critical CSS extraction, deferred non-critical styles
- JavaScript audit: identifying unnecessarily loaded islands, optimizing hydration directives (
client:visible,client:idle,client:media) - Cloudflare configuration: cache TTL rules, Early Hints, HTTP/3, Zaraz for privacy-respecting analytics
Cloudflare Pages deployment and DevOps
I set up production-grade Cloudflare Pages deployments with branch preview environments, custom domain configuration, redirect rules, header customization, and Workers integration for server-side logic at the edge. Every deployment includes automated Lighthouse CI checks that fail the build if PageSpeed scores drop below threshold.
AI and GEO visibility
Search is no longer exclusively about Google’s traditional algorithm. Perplexity, ChatGPT, and Google AI Overviews increasingly serve as the first point of discovery for information, products, and services. These AI systems index and cite websites based on content clarity, semantic structure, and entity recognition: exactly the qualities that Astro’s clean static HTML promotes.
I build Astro websites with AI Engine Optimization (AEO) as a first-class concern:
- Semantic HTML structure: proper heading hierarchy, landmark elements, and ARIA roles that AI parsing engines traverse efficiently
- Entity markup: Schema.org types aligned with your business entities, services, and expertise areas so AI systems can accurately represent your offering
- Speakable schema: identifies which content sections should be read aloud by voice assistants and cited by AI overviews
- Clean content signals: well-structured paragraphs, factual statements with attribution, and consistent entity naming that LLMs recognize and trust
- llms.txt implementation: machine-readable content index that AI crawlers use to understand site structure and content relationships
Astro’s zero-JavaScript output is itself an AEO advantage. AI crawlers that evaluate pages without executing JavaScript (as many do) see your complete, rendered content: not a blank HTML shell waiting for client-side rendering.
Technology stack
🚀 Core framework
Astro 5.x, Content Collections, View Transitions, Server Islands, MDX
🎨 Styling
Tailwind CSS 4, CSS custom properties, design tokens, dark mode
⚛️ UI frameworks
React 19, Svelte 5, Vue 3: as islands with selective hydration
🌐 Deployment
Cloudflare Pages, Cloudflare Workers, Vercel, Netlify
📝 CMS
Sanity, Contentful, Hygraph, Storyblok, DatoCMS, local MDX
🔧 Tooling
TypeScript, GitHub Actions, Playwright, Vitest, Lighthouse CI
Performance benchmarks
Astro sites I deliver achieve consistent, measurable results in production:
Who I work with
My Astro development services serve businesses and teams across several distinct situations:
Growing businesses replacing slow WordPress sites: companies whose WordPress site scores below 60 on PageSpeed mobile, suffers from plugin conflicts, or faces mounting security vulnerabilities. Migration to Astro resolves all three problems simultaneously.
Marketing teams needing faster landing pages: performance directly affects Google Ads quality scores, Meta Ads cost per click, and organic ranking. A landing page that loads in under a second converts better across every traffic source.
Development teams adding Astro to their stack: agencies and in-house teams adopting Astro for new projects or migrating existing sites, needing an experienced practitioner for architecture decisions, code review, or knowledge transfer.
Content-heavy publications and documentation sites: Astro’s Content Collections and MDX support make it the ideal framework for blogs, documentation, learning platforms, and knowledge bases that need developer-grade content tooling without full React overhead.
Agencies building for clients: white-label Astro development for agencies that want to deliver faster, more maintainable sites without maintaining in-house Astro expertise.
Working with me
I work fully remotely with clients across Europe, North America, and Australia. Communication in English throughout. Every project starts with a technical discovery call, followed by a written specification covering architecture, timeline, and deliverables. Development proceeds in milestones with staged delivery and clear acceptance criteria.
What you receive:
- A Git repository with clean, documented code you own completely
- Deployment to Cloudflare Pages with staging and production environments
- Performance report with Lighthouse scores and Core Web Vitals measurements
- 30 days of post-launch support for bug fixes and minor adjustments
- Optional ongoing maintenance retainer for updates, monitoring, and feature additions
I do not use website builders, page templates purchased from marketplaces, or AI-generated code without review. Every component is written for the specific project requirements, tested, and documented.
Ready to build with Astro?
If you have a website that loads slowly, a WordPress site that has become difficult to maintain, or a new project where performance and AI visibility matter from day one, I want to hear about it.
Why I choose Astro over WordPress for new projects
When a new project lands on my desk, the first question I ask is whether the primary need is content delivery or application functionality. For the vast majority of business websites, the answer is content delivery, and that is where Astro wins decisively.
WordPress was built in 2003 for a web where every page was generated on the server in response to a request. That architecture made sense then, but it means every visitor triggers a chain of PHP execution, database queries, and plugin processing before a single byte of HTML reaches their browser. Modern caching reduces this cost, but it cannot eliminate it entirely. There is always a warm-up period, cache invalidation complexity, and a baseline of server resource consumption that translates directly to hosting costs.
Astro takes the opposite approach. Everything that can be decided at build time is decided at build time. The result is a directory of static HTML, CSS, and a minimal amount of JavaScript that any hosting provider can serve directly from a CDN without executing a single line of server-side code. There is nothing to warm up, no database to query, and no plugin to conflict.
Performance comparison in practice. A typical WordPress business site with WP Rocket, a CDN, and modern hosting scores 65-80 on PageSpeed mobile. An equivalent Astro site scores 95-100 and typically achieves LCP times under 800ms on 4G connections. That gap translates to real business outcomes: lower bounce rates, higher Google Ads quality scores, and better organic rankings.
Hosting costs. A WordPress site needs a server capable of running PHP and MySQL, which means a managed hosting plan costing anywhere from a few dollars a month for shared hosting to significant sums for enterprise-grade infrastructure. An Astro site on Cloudflare Pages is free for most projects and scales to millions of monthly visitors with no infrastructure changes. The monthly hosting bill for a typical Astro project I deliver is zero.
Developer experience. WordPress development involves navigating a large codebase built over two decades, understanding hook priority, managing plugin compatibility, and debugging issues that only appear in production environments. Astro development is TypeScript-first, component-driven, and testable with standard web tooling. My developers are more productive, bugs are caught at compile time, and the build output is auditable and predictable.
When WordPress is still the right choice. I do not recommend Astro for every situation. WordPress remains the best choice when non-technical editors need to manage content daily through a visual interface, when an existing plugin ecosystem covers specific functionality, or when e-commerce requirements demand WooCommerce features that would take significant time to replicate. I am happy to advise on which tool fits your situation during an initial consultation.
Astro and AI visibility (GEO and AEO in practice)
The way people discover websites is changing faster than at any point since the introduction of Google’s PageRank algorithm. Perplexity, ChatGPT search, Google AI Overviews, and Gemini are now returning direct answers sourced from specific websites, and they cite those sources. Appearing in AI-generated answers is the new first page of search results.
I have spent considerable time studying how these systems select, index, and cite content. The patterns that emerge align closely with what Astro produces naturally.
Why clean HTML matters for AI crawlers. Most AI crawling systems operate without a full JavaScript execution environment. When they fetch a Next.js or create-react-app page, they often receive a near-empty HTML document that relies on client-side rendering to populate content. Astro sends the complete, rendered document in the first HTTP response, with all headings, paragraphs, and structured data intact. AI systems can read it immediately, extract entities, and represent it accurately.
Structured data as AI vocabulary. I implement Schema.org markup across every project I deliver. The Organization, WebSite, Service, Person, and Article types give AI systems a precise, machine-readable description of who my clients are, what they do, and what their content covers. When Perplexity or ChatGPT generates an answer about web development services in a specific region, well-formed Schema.org markup increases the likelihood that my client’s site is cited as a source.
llms.txt: the robots.txt for language models. I implement llms.txt on every Astro project I build. This is a plain-text file at the root of the site that provides AI crawlers with a structured index of the site’s content, the topics it covers, and the most important pages for each topic. It is the standard that emerged from the AI developer community in 2024 and has been adopted by Perplexity and other systems as a preferred signal for understanding site structure.
Speakable schema for voice and AI answer boxes. The Speakable schema type identifies specific content sections that are optimized for reading aloud or citation in AI answer summaries. I implement this on service pages, FAQ sections, and key factual content so AI systems know which paragraphs represent the most citable, authoritative content on each page.
Entity consistency and topical authority. AI systems build knowledge graphs that connect entities to their properties and relationships. Consistent entity naming across a site, combined with content that covers a topic comprehensively and from multiple angles, signals that the site is an authoritative source on that topic. I structure content architecture with this in mind from the initial project specification.
Migration process from WordPress and Next.js to Astro
A migration is not a rebuild. It is a careful transfer of everything your current site has earned: rankings, backlinks, structured data, indexed content, and user trust. My migration process is designed to transfer all of that value to the new platform while simultaneously improving performance and removing technical debt.
Phase 1: audit. Before writing a single line of code, I produce a complete inventory of the existing site. This covers every URL and its traffic, every piece of structured data, every internal link, every image and media file, and every third-party integration. For WordPress sites, I use a combination of Screaming Frog, Google Search Console data, and direct database exports to ensure nothing is missed.
Phase 2: content export and transformation. WordPress content is exported from the database and transformed into Markdown or MDX files with typed frontmatter schemas. Every post, page, and custom post type gets a Content Collection entry with the appropriate schema. Images are downloaded, converted to WebP or AVIF, and organized into the Astro public directory with proper naming conventions.
Phase 3: URL mapping and redirect strategy. Every URL in the existing site maps to its new Astro equivalent. If the URL structure changes, a 301 redirect rule is created. I configure these at the Cloudflare level using redirect rules rather than at the application level, which ensures they execute at edge without any server latency. URL mapping is documented in a spreadsheet that serves as the acceptance checklist for the migration.
Phase 4: structured data transfer and improvement. Existing Schema.org markup is transferred and audited. In most migrations from WordPress, I find that the existing structured data is incomplete or generated by a plugin that produces generic output rather than accurate, site-specific markup. The Astro implementation produces cleaner, more accurate structured data tailored to the specific business.
Phase 5: Core Web Vitals measurement. Before the migration goes live, I run Lighthouse and Web Vitals measurements on both the existing site and the Astro build in a staging environment. The before and after comparison is documented and shared. Typical improvements are 30-50 points on PageSpeed mobile, with LCP dropping from 3-5 seconds to under 1 second.
Phase 6: gradual traffic transition. For sites with significant traffic, I recommend a gradual rollout. New traffic is shifted to the Astro site while monitoring crawl errors in Google Search Console, ranking movements in position tracking, and conversion rates across key pages. Any issues are resolved before full traffic transfer.
Astro with headless CMS: the right combination for each use case
The term headless CMS describes a content management system that is decoupled from the presentation layer. Editors manage content through the CMS interface; the website fetches that content at build time and renders it as static HTML. Astro’s Content Layer API is designed specifically for this architecture and supports every major headless CMS out of the box.
WordPress as a headless backend. Many of my clients have years of content in WordPress and a team that knows the editorial interface well. Rather than migrating all content to a new CMS, I can configure WordPress to operate in headless mode. The WordPress REST API or WPGraphQL plugin exposes all content, custom post types, taxonomies, and media. Astro fetches this content at build time using the Content Layer API and renders it as static HTML. Editors continue working in WordPress; visitors receive fast Astro-rendered pages.
Sanity for structured, schema-driven content. Sanity is my default recommendation for new projects that do not have an existing CMS. Its schema-driven content model means every content type is defined in TypeScript, the same language the Astro project uses. GROQ queries are expressive and integrate cleanly with Astro’s build pipeline. The Sanity Studio interface is fast, customizable, and non-technical editors adopt it quickly. For larger content teams, Sanity’s real-time collaboration features and content versioning are significant advantages.
Storyblok for visual editing. When clients need to see their changes in the context of the actual page layout as they edit, Storyblok is the best option. Its Visual Editor renders the Astro page in an iframe alongside the editing interface, so changes are visible immediately. I use Storyblok for marketing-heavy sites where the design team needs to update layouts, create new page sections, and manage banners without involving a developer.
Contentful for enterprise teams. Contentful has the deepest enterprise feature set among headless CMS platforms. When I am working with large organizations that need content workflow approvals, fine-grained role permissions, content staging environments, and audit logs, Contentful is the appropriate choice. Its GraphQL API integrates with Astro’s build system and supports incremental builds for large content libraries.
Local MDX for developer-managed content. For documentation sites, developer blogs, and project websites where the content team is also the development team, Astro’s built-in Content Collections with local MDX files is the simplest and most powerful option. No external service is required. Content lives in the Git repository, changes go through pull requests, and the editorial workflow is the same as the development workflow. This is how I manage content on my own site.
Deployment and infrastructure: Cloudflare Pages in production
Every Astro project I build deploys to Cloudflare Pages. After evaluating Vercel, Netlify, and Cloudflare Pages extensively across production projects, Cloudflare Pages is consistently the best choice for the combination of performance, reliability, and cost.
Edge computing as the default. Cloudflare operates 300 or more data centers across every populated continent. When a visitor in Australia requests a page from a site hosted on Cloudflare Pages, the response comes from the nearest Cloudflare edge location, not from a server in a US data center. The difference in latency is measurable: 20-30ms from Sydney versus 200-300ms from Virginia. For global audiences, this is not a minor optimization; it is the difference between a fast site and a slow one.
Zero-config SSL and security. Every Cloudflare Pages deployment gets an SSL certificate automatically on the custom domain, renewed automatically, with no intervention required. HTTP/3 and QUIC are enabled by default, which reduces connection overhead on mobile networks. Cloudflare’s DDoS protection, WAF, and bot mitigation are active on every deployment without any configuration.
Instant rollbacks. Every deployment to Cloudflare Pages is immutable and addressable. If a deployment introduces a problem, rolling back to the previous version is a single click in the Cloudflare dashboard or a single command in the CLI. The rollback happens at the edge within seconds, not minutes. For production sites where downtime has real business costs, this is a critical capability.
Branch preview deployments. Every pull request in the GitHub repository automatically triggers a Cloudflare Pages deployment to a unique preview URL. Before any code merges to the main branch, I can share a live, fully functional preview of the changes for client review. This eliminates the gap between development environment behavior and production behavior, because the preview runs on the same Cloudflare infrastructure as production.
Cloudflare Workers for server-side logic. When a site needs server-side functionality such as form handling, API proxying, authentication, or dynamic redirects, I implement it as a Cloudflare Worker. Workers run at the edge with cold-start times measured in microseconds, not the hundreds of milliseconds typical of traditional serverless platforms. They are written in TypeScript, tested locally with Wrangler, and deployed alongside the Astro site as part of the same build pipeline.
Ongoing maintenance and support after launch
A website is not a finished product on launch day. It is a living system that requires attention to remain secure, performant, and aligned with evolving business needs. I offer structured post-launch support that covers the lifecycle of every Astro project I build.
The 30-day inclusion. Every project I deliver includes 30 days of post-launch support at no additional cost. This covers bug fixes, minor content adjustments, configuration tweaks, and questions that arise as the client team begins working with the site. In practice, most issues surface in the first two weeks, and the 30-day window gives sufficient time to resolve them without the friction of separate billing.
Dependency and framework updates. Astro releases new versions regularly, and the Cloudflare Pages platform evolves continuously. I offer scheduled dependency update services that keep the project on current, secure versions of Astro, Tailwind CSS, and all npm dependencies. Updates are tested in a staging environment before deployment to production, and any breaking changes are resolved before clients see them.
Performance monitoring and regression detection. PageSpeed scores and Core Web Vitals can regress when new content is added, images are uploaded without optimization, or new features introduce JavaScript. I configure automated Lighthouse CI checks that run on every deployment and alert on regressions below a defined threshold. For clients who want ongoing performance visibility, I provide monthly reports with trend data.
Security monitoring. Static Astro sites have a dramatically smaller attack surface than WordPress installations. There is no database to inject, no admin panel to brute-force, and no PHP execution layer to exploit. However, Cloudflare configuration, DNS records, and third-party integrations still require attention. I provide security reviews that cover DNS configuration, security headers, Content Security Policy settings, and third-party script audits.
SLA-backed support retainers. For clients who need guaranteed response times, I offer support retainers with defined SLA tiers. These cover priority response to production issues, a set number of development hours per month for feature additions and content updates, and regular maintenance tasks on a predictable schedule. Retainer pricing is individual based on the scope of services required and the criticality of the site to the business.
Related service surfaces
This long-form landing covers Astro engineering scope. The shorter Astro developer service pillar summarises engagement model, HowTo schema, FAQ, and architecture diagram for the same intent.
