Astro 7.0(astro.build) |
Crossing data between Rust and JS is inherently kinda slow (relatively), so there's a constant push and pull between flexibility and performance that's not always easy to reason about!
The TL;DR is that `marked` is very light, but a bit on the slower side compared to Sätteri and `markdown-it` (and its forks). I'm not sure how friendly the extensibility is, but Sätteri re-use the same AST format as the unified ecosystem, which might feel more friendly.
Both good options, though!
Astro has gone from 247 deps in v6 to 190 in v7.
I still have some plans in this area that should reduce the overall count further, though.
So I can use components, reuse stuff, include stuff etc, basically what I would do with PHP back in the days, but now it spits out a compiled page I can host for cheap (often even free). And easy to add in some interactivity when needed. Like I render a list as a component, and very easy to ship some dynamic filtering on the frontend using the same code, but the content is still statically in the html, so served fast and good SEO.
I also wish there could be a general purpose content processing API so I can plug a different format than markdown (such as typst)
See this example: https://stackblitz.com/edit/github-ug3paw61?file=src%2Fpages...
For my personal site, it was a 5 minute work, as usual :)
I'm personally awaiting the rewrite to assembly.
I have build several sites using Astro 6, and i am finding the ease of building the sites amazing and exceptional in SEO as well.
I just recently updated my website to Astro 6 and now... there's Astro 7. Maybe by the time I update, Astro 8 will be a few weeks in the future.
My understanding is that astro isn't considered particularly slow?