r/astrojs

Email & crm dev moving to astro for side hustle. First client acquired. CMS help?
▲ 10 r/astrojs

Email & crm dev moving to astro for side hustle. First client acquired. CMS help?

I am a new front end dev. I've been working in email and Salesforce CRM development for ~4.5 years. I've made a few simple front end vanilla html, css and ampscript pages in Salesforce marketing cloud but I have no professional experience in full web.

I've been learning astro over the last few months and I love it. I have created a few projects like my own site. I just landed my first paying client. A small allied health service business that is currently running their site off wix that is in need of an update regardless. I'm pitching a full rebuild on astro, email overhaul and contact list pipeline. I am good with the majority of their stack but I am getting hung up on CMS. I want to keep the clients costs lower than their wix subscription across all services, including email. Astro has so many noted in their docs, I felt hesitant to start digging into one. I started working on keystatic, but I don't have the time or patience to trial each one there.

This is a non-technical client who wants to make regular updates to things like their service provider pages where each professional has a bio and a book link to an external booking service. The client wants control over this page and its content (not layout) so a content collection is a perfect fit.

Astro ssg > GitHub > cloudflare workers

^--------CMS?----------^

What's your go-to, easy to use for the client (dx agnostic), ideally open sourced CMS? What are you using for SMBs?

u/HandyStan — 13 hours ago

Dynamically Updating a File/Search Index via SSR - Is It Possible?

I have a website that basically shows a list of items returned from an API, and then lets you search within them.

Items can be added to the database at any time, so the site is using SSR to constantly re-render. Search is then powered via client-side DOM filtering.

Right now, I have the site load the first 12 items (as this is a quick API request), then request everything else, and load that onto the page dynamically over time. Only once the whole dataset is downloaded, does the search work.

This was fine at first, but I'm now at several hundred items, and it can take >10 seconds to enable search – longer on slow network connections. Not ideal!

Rather than constantly re-fetching the data from the server for every page load, I have had a couple of thoughts, but I'm not sure if either are viable in Astro:

  1. Cache the page aggressively. I don't want to use a CDN or anything for this, it needs to just be Astro, but if there was a way to say "hey, load this page dynamically unless a cachebusting URL is hit, then rerender entirely", then I could easily set up a webhook or something similar to fire when the database gets updated.

  2. Dynamically modify the search index. If I can write to a file whilst the site is live, I can store the JSON blob and use that to power the search, rather than the API. Again, I'd need a way to say "hey, overwrite that" or even "add this to search index", but is it even possible to modify files like this from an Astro function?

(I do realise that I should probably create a proper, performant search endpoint and just load the data fully dynamically, rather than fetching it all first and then using client-side filtering. At this point, I'm basically using this project to push my understanding of Astro, so I'd like to get this working "natively" if possible.)

Any pointers, tutorials, codebases, whatever would be appreciated. Or you can just tell me "this isn't possible" and I'll move on 😄

reddit.com
u/GnorthernGnome — 4 days ago
▲ 37 r/astrojs

Migrating a WordPress website to Astro

Context:
I have to move/convert/migrate a 350-page WordPress website to Astro. (This is a home service business.)

  • 200 are blog posts
  • 50 are service pages
  • around 90+ are location pages, FAQs, Terms of Service, and a few other pages around the website
  • landing pages for different services like Google Ads, Yelp, social media, and so on

Problem:
I need the website to keep the current structures, URLs, and internal structure, name of the slugs, demo URLs, and so on.

I found Simply Static, a plugin for WordPress that does save the website as a static website.

Does anyone have any experiences with it, or is there another way to do that?

I would love your suggestions or recommendations.

Thank you very much.

reddit.com
u/Diligent-Month5010 — 10 days ago
▲ 27 r/astrojs

How much control does Astro give you over technical SEO compared to WordPress?

I've been exploring Astro and one thing that keeps coming up in discussions is the idea of "total SEO freedom."

In WordPress, most SEO work depends on plugins like Yoast or RankMath. A skilled dev can bypass them, but the ecosystem pushes you toward that layer of abstraction.

In Astro, my understanding is that everything is code by default: meta tags, canonicals, structured data, robots.txt, sitemap. No plugin standing between you and the HTML output.

My questions:

  • Is that a fair comparison or am I oversimplifying?
  • Are there any SEO use cases where WordPress still has a clear advantage over Astro?
  • What's your go-to setup for SEO in Astro projects?
reddit.com
u/Rguedes80 — 10 days ago
▲ 267 r/astrojs

Astro 7.0 Released: A Summary of What's New

Here's a Summary of What's New in Astro 7.0

  • Performance is the headline. The .astro compiler was rewritten in Rust. Markdown and MDX now run through a Rust-powered pipeline called Sätteri (built by Erika from the core team). The rendering engine was replaced with a queue-based approach. Combine that with Vite 8 and its new Rolldown bundler, and builds are 15-61% faster across the board. The Cloudflare docs site (8,400+ pages) went from 387s to 262s. The Astro Website site went from 63s to 24s.
  • The new Rust compiler has one breaking change worth knowing. No more silent HTML correction. The old Go compiler would reorder elements and auto-close tags. The new one treats your markup as-is and throws errors on unclosed tags. Also, whitespace between inline elements now follows JSX rules, so <span>Hello</span><span>World</span> renders as "HelloWorld" with no space.
  • Route caching is now stable. It was experimental in v6. You get a single platform-agnostic API and new experimental CDN providers for Netlify, Vercel, and Cloudflare.
  • Advanced routing is interesting. You can now add a src/fetch.ts file and take full control over the request pipeline. Hono is supported, so you can compose middleware in any order.
  • AI tooling is genuinely useful. astro dev --background starts the dev server as a managed background process. Astro can detect when it's running inside an agent and enable this automatically. JSON logging is also in, which was the most upvoted roadmap request.

Upgrade via

npx @astrojs/upgrade

What's everyone's take on the Rust compiler change?

u/tffarhad — 13 days ago
▲ 55 r/astrojs

Moved three Astro sites to version 7…today!

Went pretty smooth!

Not the struggle to migrate a fully functional site with deep integrations with Stripe, MailerLite, and another system I run when moving from 5 to 6.

This was smooth. So I went for it.

Astro keeps getting better and faster. Love it.

reddit.com
u/greglturnquist — 11 days ago
▲ 19 r/astrojs

Using Astro as a non-developer

I’ve recently started creating some simple project sites with Astro and I absolutely love it compared to WordPress. Sites are all local business sites, using GitHub and cloud flair pages, R2 storage for images, and a web hook behind a cloud flare secret variable to send form submissions.

I’m considering moving away from WordPress entirely, but because I don’t have a developer background, I am unsure of the pitfalls I may run into and I rely on Claude Code to troubleshoot.

My main question is, what are the pitfalls if I’m going to run into using Astro with this set up, most of the feedback I’ve gotten is that it’s probably fine and low risk since I’m just running static sites.

My choices are basically, one - stick with WordPress, two - move to Astro and rely on Claude code to build and troubleshoot, or three - hire a developer for my team who can handle the infrastructure, but I don’t know if that’s overkill for what I need.

Those experienced with Astro - is it a must to have a developer for this when building local business sites on Astro? Ultimately I probably will, but I want to figure out ahead of time what I “don’t know” and how big of an issue it will be if i delay sourcing a dev for my team.

Thanks in advance!

reddit.com
u/Copyranker — 13 days ago
▲ 72 r/astrojs

Astroplate updated to Astro v7 + built-in AI Agent skills

Hey everyone,
Just wanted to share a quick update on Astroplate (our Astro free starter template with 1.1k+ Github stars and 400+ forks).

We just bumped the template to Astro v7 along with the framework update, we added native AI agent skills directly into the codebase.

If you use tools like claude code, cursor, or any agentic workflows, those agents can now work with Astroplate without hallucinating or guessing.

These added configurations give the agents explicit boundaries and exact instructions on how the project architecture works, saving you from broken code and context-shifting errors.

what’s inside now:

  • full Astro v7 compatibility
  • bundled agent skill definitions for context preservation
  • strict pnpm workspace setup
  • clean tailwindcss and typescript configurations

If you are planning to work on a new Astro project, you can start with Astroplate and modify it based on your needs instead of starting from scratch. It provides the foundation that will save you hours of time (and a lot of tokens) when building with coding agents.

Check out the repository here: https://github.com/zeon-studio/astroplate

u/tffarhad — 12 days ago

Astro, CSP and inline scripts

Hi Everyone,

I have a question regarding using CSP in Astro.

I have a bunch of Astro 6 and 7 sites, so CSP is no longer "experimental". However a lot of tracking services (usual suspect: google, meta, etc.) are asking for their JS snippet to be placed inline somewhere on the page.

How do you deal with that:

  1. separate file (does not seem to fix the issue),
  2. hash,
  3. nonce (can be tricky in Astro given the flow),
  4. else?

Thanks

reddit.com
u/stpaquet — 12 days ago