frontpage.
newsnewestaskshowjobs

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/

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•1y 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•1y 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.
flashblaze•1y 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.
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.
skeptrune•1y 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•1y 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).

Read this before you buy that TV streaming stick

https://krebsonsecurity.com/2026/07/read-this-before-you-buy-that-tv-streaming-stick/
443•speckx•5h ago•261 comments

Stacked PRs are now live on GitHub

https://github.blog/changelog/2026-07-30-stacked-pull-requests-are-now-in-public-preview/
386•tomzorz•6h ago•133 comments

Agent Skill to Force Docs in ASD-STE100 Simplified Technical English

https://github.com/AminBlg/SimpleEnglish
100•navs•3h ago•37 comments

Gemini Robotics 2 brings whole body intelligence to robots

https://deepmind.google/blog/gemini-robotics-2-brings-whole-body-intelligence-to-robots/
431•ai2027•7h ago•380 comments

I flagged two research papers for fake authors and both were accepted as orals

https://geospatialml.com/posts/reviewing-ai-slop/
13•volumes94•30m ago•0 comments

Rune 1.1: adds Python, an Emacs editor, a symbol index and is now free

https://rune.build/blog/rune-1-1-release
15•ernestrc•1h ago•4 comments

CodePen 2.0

https://chriscoyier.net/2026/07/30/codepen-2-0/
105•robin_reala•5h ago•27 comments

UEFA and its national associations will not participate in FIFA competitions

https://www.uefa.com/news-media/news/02a7-213a92896eb0-54dfbf454e3b-1000--statement-on-behalf-of-...
635•dickfickling•4h ago•349 comments

Physicists Solve a Muon Mystery. Now, Old Results Don't Add Up

https://www.quantamagazine.org/physicists-solve-a-muon-mystery-now-old-results-dont-add-up-20260729/
158•ibobev•7h ago•79 comments

Advancing the price-performance frontier with GPT‑5.6

https://openai.com/index/advancing-the-price-performance-frontier-with-gpt-5-6/
449•tedsanders•5h ago•283 comments

Show HN: Distilling DeepSeek into GPT-OSS doesn't transfer censorship. Try it

https://www.ctgt.ai/research/distillation-censorship-transfer
64•cgorlla•4h ago•44 comments

2x, not 10x: coding with LLMs in 2026

https://obryant.dev/p/2x-not-10x/
173•tnisonoff•5d ago•129 comments

Memo-1: A 6502 computer built from scratch, using a Minitel as its terminal

https://github.com/MemoireMorte/Memo-1
40•sciences44•2d ago•3 comments

We Gave GPT 5.6 Sol a Real Business. It Lied, Spammed, and Lost $447

https://www.bottlenecklabs.com/blog/autonomously-run-businesses
257•Areibman•5h ago•158 comments

The Economic Benefit of Refactoring

https://martinfowler.com/articles/exploring-gen-ai/refactoring-economic-benefit.html
173•javaeeeee•7h ago•77 comments

Google will expand age checks on Android worldwide till the end of the year

https://android-developers.googleblog.com/2026/07/google-play-age-signals-api-safer-experiences.html
326•dmantis•12h ago•402 comments

Making Postgres queues scale

https://www.dbos.dev/blog/making-postgres-queues-scale
94•KraftyOne•4h ago•21 comments

Rise Reforming (YC S26) Is Hiring

https://www.ycombinator.com/companies/rise-reforming/jobs/wJ9Q9nv-senior-chemical-process-engineer
1•george_rose25•6h ago

Bad Apple but It's Traceroute

https://jssfr.de/2026-07-27-bad-apple-but-traceroute.html
26•jssfr•3d ago•7 comments

Show HN: Kedge – Full-stack cloud with forkable VM snapshots and global SQLite

https://kedge.dev/
76•wgjordan•1d ago•15 comments

GCC steering committee announces AI policy

https://lwn.net/Articles/1086041/
220•arto•11h ago•251 comments

Show HN: Port Zero – how I learned to stop worrying and love PORT=0

https://portzero.net/
15•octopoc•3d ago•12 comments

Solving poker in custom WebGPU kernels

https://phulin.me/blog/poker/
35•patrickhulin•7h ago•12 comments

Why is everyone trying to build a solid-state battery?

https://www.construction-physics.com/p/why-is-everyone-trying-to-build-a
157•crescit_eundo•10h ago•191 comments

Hacker Public Radio

https://hackerpublicradio.org/
120•bmacho•8h ago•21 comments

Upper stage impacting the moon on 2026 August 5

https://www.projectpluto.com/25010d.htm
162•ryannevius•9h ago•41 comments

Saber-toothed cats became inbred–and struggled to move–before they went extinct

https://www.science.org/content/article/saber-toothed-cats-became-inbred-and-struggled-move-they-...
9•gmays•1h ago•2 comments

Launch HN: Prized (YC S26) – Let non-engineer staff build secure internal tools

https://prized.dev
63•marinoseliades•9h ago•44 comments

The lost civic life of movie rental stores

https://thereader.mitpress.mit.edu/the-lost-civic-life-of-movie-rental-stores/
100•facundo_olano•8h ago•138 comments

Why DNA damage from smoking and UV rays cause cancer in some but not others

https://www.cam.ac.uk/research/news/study-reveals-why-dna-damage-from-smoking-and-uv-rays-may-cau...
78•gmays•8h ago•90 comments