Delivery & reach
i18n
Route and translate content for multilingual sites.
- Astro i18n routing — Built into Astro. Locale-prefixed routes, fallbacks, and translation helpers without a third-party plugin.
PWA
Have a website also behave as a mobile app with offline availability.
- Vite PWA — The standard choice in the Vite ecosystem. Generates a service worker and manifest, and handles offline caching.
Script offloading
Move third-party scripts (analytics, chat widgets, ads) off the main thread.
- Partytown — An Astro integration that runs third-party scripts inside a web worker.
UI building blocks
Front-end framework
Astro is HTML-first, but you can drop in islands of any major framework when you need real interactivity.
- Alpine.js — Zero bundle cost with no hydration overhead, but is too limited for anything beyond simple UI state or component reuse. Best used for dropdowns, modals, and toggling CSS classes.
- Preact — Deliver React compatibility at a fraction of the bundle size, but some React libraries break under compat mode in non-obvious ways. Best used for replacing React islands, reusing hooks, and lightweight interactive widgets.
- React — An unmatched ecosystem, but it carries the heaviest hydration cost of the group and is overkill for simple islands. Best used for dashboards, multi-step forms, and anything needing React-specific libraries.
- SolidJS — The finest-grained reactivity of the group with no virtual DOM overhead, but has the smallest ecosystem. Best used for live feeds, real-time counters, and performance-critical reactive UIs.
- Svelte — The most readable syntax and the best built-in animation primitives of the group, but some patterns don’t translate cleanly into Astro’s island model. Best used for animated components, filterable lists, and form-heavy islands.
- Vue — Its single file component structure and ecosystem are mature and ergonomic, but has nothing that really stands out against other frameworks. Best used for tabs, interactive widgets, and teams already familiar with Vue.
Component library
Pre-built accessible components for fast development.
- Starwind UI — Astro-native, copy-in components built on Tailwind.
- daisyUI — Class-based component layer built on top of Tailwind.
Icon library
A consistent icon set that doesn’t ship the entire pack to the browser.
- Lucide — Clean, opinionated, MIT-licensed icon set forked from Feather.
- Astro Icon — Pull static SVGs from the Iconify set.
Animation library
For animations that go beyond what CSS keyframes can easily handle.
- AutoAnimate — Lightweight library for smooth transitions, but limited granular control.
- Motion — Middle of the pack when it comes to animations, but is overreaching for more complex motion.
- GSAP — The most powerful and precise option, but is overkill for simple animations.
Authoring & content
CMS
Allows for content edits without opening a code editor.
- Tina CMS — Git-based, visual editor that keeps content in source control. Note the in-page visual editing piece is still flagged as experimental for Astro.
- Decap CMS — Open-source successor to Netlify CMS.
Mermaid diagram
Render flowcharts and sequence diagrams.
- astro-mermaid — In-browser rendering specifically for Astro.
Embed content
Embed YouTube, Vimeo, tweets, etc. without affecting performance.
- Astro Embed — Lazy-loaded, lightweight wrappers for the common embed providers.
OG image generation
Per-page social cards so links to the site look good when shared on social platforms.
- astro-og-canvas — Build-time programmatic generation. Define a card template in code and an image renders for every page during
astro build. - OG Image Maker — Hosted designer for one-off cards. Useful when you want a hand-crafted image for the homepage or a marquee page without writing a template.
Backend-as-a-service
Forms
Since static sites can’t handle POST on their own.
- Web3Forms — Just
action="https://api.web3forms.com/submit"plus an access key. No backend, a free tier, and spam filtering included.
Transactional email (contact form, password reset, receipts) from a real API.
- Resend — Developer-first API with a generous free tier.
Newsletter
A list and an editor for sending updates.
- Buttondown — Markdown-first, indie-friendly pricing, embeddable subscribe form.
Comments
Reader discussion under blog posts or docs.
- Remark42 — Self-hosted, lightweight, and supports anonymous and OAuth.
Search
Client-side full-text search.
- Astro-Pagefind — Wraps Pagefind, which builds a static search index from your
dist/output and ships a tiny runtime.
Payments
Handle payment processing.
- Paddle — Merchant of record that handles global tax and compliance. Best for SaaS and digital products.
- Lemon Squeezy — Merchant of record acquired by Stripe in 2024 and being folded into Stripe Managed Payments. Existing accounts still work, but new projects should weigh whether to start on Lemon Squeezy or jump straight to the Stripe successor.
- Ko-fi — Simple tipping/membership/commissions widget that is NOT a merchant of record.
Media & state
Media CDN
Offload images and video to a service that resizes, formats, and caches them globally.
- Cloudinary — Mature transform pipeline (resize, crop, format, AI) with a generous free tier.
State
Share reactive state between islands.
- Nano Stores — Sub-1 kB, framework-agnostic atoms. Astro’s recommended way to share state between React, Svelte, and Vue islands on the same page.
Observability
Analytics
Traffic insight that respects privacy.
- Umami — Self-hostable, cookieless, and GDPR-friendly (General Data Protection Regulation).
Error tracking
Monitor runtime errors.
- Sentry — Industry-standard error and performance monitoring.
Quality & developer experience
Git hook
Pre-commit / pre-push automation so lint, format, and typecheck run at certain steps.
- Lefthook — Single Go binary, parallel hook execution, and one YAML config.
Environment variables
Type-safe, validated access to env vars at build and runtime.
- astro:env — Built into Astro. Declare each variable’s type and whether it’s public/secret in
astro.config.mjs.
Unit & integration test
Test utilities, components, and basic logic.
- Vitest — The default testing tool for all projects.
E2E test
Simulate user workflow through your app.
- Playwright — Cross-browser, parallel, and a great trace viewer. The current default for E2E testing.
- Cypress — Alternative if you prefer a time-travel debugger and interactive authoring.
a11y testing
Catch contrast, ARIA, and structural issues before they reach users.
- axe DevTools — Industry standard Chrome extension that audits the page in DevTools with rule explanations and remediation hints.
- WAVE Evaluation Tool — Chorme extension with a visual overlay that pins issues directly on the rendered page.
Link checking
Find broken internal and external links.
- Lychee — Fast Rust CLI that checks every link in
dist/or your repo.
Bundle analysis
Visual your project’s size and weight.
- Sonda — Vite/Astro-native bundle visualizer that highlights duplicated deps and oversized modules.