frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

RSC for Astro Developers

https://overreacted.io/rsc-for-astro-developers/
43•feross•1y ago

Comments

brudgers•1y ago
Astro is The web framework for content-driven websites.

https://github.com/withastro/astro

betterThanTexas•1y ago
> The web framework for content-driven websites.

As opposed to those driven by, what, random-number generators?

ameliaquining•1y ago
I think this means, as opposed to rich interactive web apps where everything interesting happens after the initial page load.
betterThanTexas•1y ago
I have no clue how you discerned this from the description, but I'd like to understand more. What can you point to on your computer that isn't "content"?
pcthrowaway•1y ago
Interactive UI components aren't content, though they might affect content delivery.

For example, a Javascript+HTML game might be itself considered content, but within the game the game elements and controls (mouse, player characters, NPCs, keyboard bindings) wouldn't be considered content, whereas images and dialog text might reasonably considered content again.

betterThanTexas•1y ago
I don't see why interactive UI is any less content than anything else delivered over the wire. How would you express a website without it?

it almost seems like the word "content" is intended to connote "profitable and dynamically-loaded assets". Why you would not use that phrase is a mystery.

I suppose that "dynamically-loadable asset creator" isn't a great marketing pitch from the perspective of artists.

azangru•1y ago
> I have no clue how you discerned this from the description, but I'd like to understand more.

One way of understanding the meaning of a dubious phrase is examining its use in context. For example, one of the pages of the Astro docs begins as follows:

"Astro is the web framework for building content-driven websites like blogs, marketing, and e-commerce" [0]

Ok; so we have our prototypes — or, as Jason Miller would call them, holotypes — of the mysterious "content-driven websites". They are blogs, marketing sites, or e-commerce sites.

Another way of understanding the meaning of a confusing phrase is hearing the distinction explained by the creator of the framework. In early podcasts, when Astro was still mostly unknown, Fred Schott explained that it was not intended for building something like Figma, or Photoshop, or Facebook, or Youtube; but rather something like blogs or magazines; although primarily he was probably targeting the creators of e-commerce websites, because those were the ones that could bring in money.

[0] https://docs.astro.build/en/concepts/why-astro/

betterThanTexas•1y ago
> "Astro is the web framework for building content-driven websites like blogs, marketing, and e-commerce" [0]

Ok, but opposed to what? What does a non-content oriented website look like? Is a website itself not simply content?

> Fred Schott explained that it was not intended for building something like Figma, or Photoshop, or Facebook, or Youtube

Perhaps their tagline should be "we aren't oriented around building single page websites unlike all those other frameworks". I never would have understood that Figma, Photoshop, and Youtube were not content-oriented websites otherwise. "Content" is mostly not a meaningful phrase outside of a context which gives it meaning (i.e. it is a floating signifier).

azangru•1y ago
Sure, content is anything a container contains :-) My point was though that when a dictionary definition gives an unsatisfactory reading of a sentence, then perhaps other, indirect methods should be employed to tease the meaning out.
naet•1y ago
There are "content" driven websites which are things like blogs, marketing / brochure style sites, documentation sites, etc. They are driven by content that is authored by the website owners that can then be cached or is not frequently updated by end users or external data.

Then there are sites that are more application driven or service driven. Stuff like a messaging client, social media, streaming service, eCommerce, or other full on interactive web app. They tend to be more data driven or dependent on end users, and less static content.

That is frequently how the word content is used in the context of web development. You might have heard of a CMS or content management system. It's not the same as someone using the word content like social media "content creator".

insin•1y ago
Former Gatsby users know where they were on the day they freed themselves from that flaky image processing pipeline piped through GraphQL (they were at their computer).

There's no evidence for this, but it's a scientific fact that Astro has five 9s... in its net promoter score.

swyx•1y ago
fellow gatsby refugee here but i'd be fair to gatsby that i dont think the flakiness of the image processing is gatsby's fault, it's `sharp`, its just a very cpu heavy workload and for large sites it's gonna choke. graphql had nothing to do with this one
pier25•1y ago
Astro is great.

It became my default SSG a couple of years ago and now I'm seriously considering using it for apps too. Anyone has experience with that?

I'm thinking I could just use Astro for rendering the HTML with islands but still use a non-JS backend.

flashblaze•12mo ago
If you're planning on using any framework (like React), I won't recommend it. The reason being, if you're using any library from React which depends on the Context API, it will cause issues since you'll have to wrap your respective pages/components with it and handle navigation on the client side to preserve any global "state" if any. At which point, you're better off using a fullstack framework.
skeptrune•1y ago
Only reason why I would use RSC's over Astro is to share context between islands. There's no other major benefit.

Also, nit, but I wish this article explicitly mentioned and explained Astro's "code fence" idea. It's demarcates the boundary between server and client much more clearly than React's 'use client'.

pier25•1y ago
> share context between islands

This is extremely easy to solve with Astro:

https://docs.astro.build/en/recipes/sharing-state-islands/

skeptrune•1y ago
>In Astro, you can nest Astro Components inside Client Islands, but if those include more Client Islands, they’ll still be seen as separate roots by your framework (e.g. React). This is why nesting interactive behavior doesn’t compose as naturally as in client apps, e.g. React or Vue context can’t be passed between Astro islands.

I agree with what the link author wrote here. Nanostores is great (s/o EvilMartians), but it's not as natural or easy to use as each respective framework's context solution.

pier25•1y ago
You're right. Sorry I misunderstood. For some reason instead of "context" I read "state".
danabramov•12mo ago
I slightly disagree with your nit. I don’t think code fence really demarcates the boundary because the code below the fence definitely does run on the server — otherwise, referencing other Astro components wouldn’t work there. The fence represents the “bindings vs template” separation but not “server vs client” in my reading.
skeptrune•12mo ago
Fair point, you've convinced me on the "bindings vs template" distinction.

However, from a developer's perspective, the ability to securely make backend requests with secrets in the top fenced area and pass results to the template still feels like a clear "server-side execution context" boundary.

danabramov•12mo ago
Yeah. Not saying it’s the same thing but the conceptual equivalent to this boundary is

import "server-only"

This causes a build error if imported from a client environment. So the intended usage is that you put that into your secrets (and maybe even in your data layer entry point) and you’re golden. It will poison any transitive import that eventually imports that thing.

The developer wouldn’t necessarily “see” where they are at any given moment but importing the “wrong thing” would give them a module stack trace so they can decide where to “make the cut”. It takes a bit to embrace this workflow but it’s productive once you “mark” what’s server-only.

The enforcement of “can’t use state on the client” is built on the same mechanism but inverse (client-only).

flashblaze•12mo ago
Love love love Astro. Been using it since it was launched. My personal site and 1st product's landing page both are built using Astro. Builds fast, has the ability to ship 0 JS and allows to any frontend libarary makes it a killer framework imo.

Canvas (Instructure) LMS Down in Ongoing Ransomware Attack

https://www.theverge.com/tech/926458/canvas-shinyhunters-breach
206•stefanpie•3h ago•67 comments

Dirtyfrag: Universal Linux LPE

https://www.openwall.com/lists/oss-security/2026/05/07/8
406•flipped•6h ago•187 comments

Maybe you shouldn't install new software for a bit

https://xeiaso.net/blog/2026/abstain-from-install/
112•psxuaw•2h ago•56 comments

Nonprofit hospitals spend billions on consultants with no clear effect

https://www.uchicagomedicine.org/forefront/research-and-discoveries-articles/nonprofit-hospitals-...
51•hhs•2h ago•18 comments

The Burning Man MOOP Map

https://www.not-ship.com/burning-man-moop/
536•speckx•11h ago•282 comments

Agents need control flow, not more prompts

https://bsuh.bearblog.dev/agents-need-control-flow/
326•bsuh•9h ago•181 comments

Researchers discover advanced language processing in the unconscious human brain

https://www.bcm.edu/news/researchers-discover-advanced-language-processing-in-the-unconscious-hum...
40•hhs•2h ago•11 comments

Building for the Future

https://blog.cloudflare.com/building-for-the-future/
253•PriorityLeft•5h ago•156 comments

Natural Language Autoencoders: Turning Claude's Thoughts into Text

https://www.anthropic.com/research/natural-language-autoencoders
195•instagraham•7h ago•64 comments

The Disappearance of the Public Bench

https://placesjournal.org/article/the-disappearance-of-the-public-bench/
24•cainxinth•1d ago•11 comments

AlphaEvolve: Gemini-powered coding agent scaling impact across fields

https://deepmind.google/blog/alphaevolve-impact/
243•berlianta•10h ago•98 comments

DeepSeek 4 Flash local inference engine for Metal

https://github.com/antirez/ds4
291•tamnd•10h ago•85 comments

AI slop is killing online communities

https://rmoff.net/2026/05/06/ai-slop-is-killing-online-communities/
448•thm•7h ago•431 comments

The Traveling Salesdog Problem

https://www.wespiser.com/posts/2026-05-04-traveling-salesdog.html
5•wespiser_2018•2d ago•1 comments

Hackers deface school login pages after claiming another Instructure hack

https://techcrunch.com/2026/05/07/hackers-deface-school-login-pages-after-claiming-another-instru...
17•Veiled•3h ago•1 comments

Two Home Affairs officials suspended after AI 'hallucinations' found

https://www.citizen.co.za/news/home-affairs-officials-suspended-ai-hallucinations/
53•jruohonen•6h ago•15 comments

I want to live like Costco people

https://tastecooking.com/i-want-to-live-like-costco-people/
233•speckx•10h ago•493 comments

Chrome removes claim of On-device Al not sending data to Google Servers

https://old.reddit.com/r/chrome/comments/1t5qayz/chrome_removes_claim_of_ondevice_al_not_sending/
466•newsoftheday•9h ago•172 comments

GNU IFUNC is the real culprit behind CVE-2024-3094

https://github.com/robertdfrench/ifuncd-up
8•foltik•1h ago•1 comments

Rolling the Root Key

https://blog.apnic.net/2026/05/05/rolling-the-root-key/
19•jandeboevrie•2d ago•2 comments

Principles for agent-native CLIs

https://twitter.com/trevin/status/2051316002730991795
59•blumpy22•8h ago•30 comments

Tools in the Grass: Raising the next generation of crafts person

https://www.popularwoodworking.com/editors-blog/tools-in-the-grass/
27•NaOH•2d ago•2 comments

RaTeX: KaTeX-compatible LaTeX rendering engine in pure Rust

https://ratex.lites.dev/
160•atilimcetin•3d ago•87 comments

PySimpleGUI 6

https://github.com/PySimpleGUI/PySimpleGUI
89•geophph•2d ago•46 comments

Komai: a fine Matrix chat app you can get to love

https://etke.cc/blog/introducing-komai
4•anotherevan•1h ago•1 comments

Colored Shadow Penumbra

https://chosker.github.io/blog/colored-shadow-penumbra
33•ibobev•6h ago•12 comments

Creating for a niche

https://www.davesnider.com/posts/working-in-a-niche
29•snide•6h ago•3 comments

The Self-Cancelling Subscription

https://predr.ag/blog/the-self-cancelling-subscription/
147•surprisetalk•11h ago•63 comments

Show HN: TRUST – Coding Rust like it's 1989

https://github.com/wojtczyk/trust
123•wojtczyk•19h ago•74 comments

Gambling ads on social media reach more than twice as many men as women: study

https://www.cam.ac.uk/research/news/gambling-ads-on-social-media-reach-more-than-twice-as-many-me...
4•hhs•2h ago•1 comments