If I understand correctly, the React runtime is shared between islands (and you can share state between them if necessary), but they're also pre-rendered for their initial state at build-time.
So you can't do as much in Astro as you can in Next.js, but it will definitely scratch the itch of compile-time rendering.