Rules Hub
Coding Rules Library
← Back to all rules
Rule priority, scope & exceptions
Use this to align rules with the senior-level structure (P0/P1/P2, scope, exceptions/tradeoffs).
frontend ruleP2stack specificStack: Astro
astrossrseoperformance
Render static content on the server, not as a client island
In island/hybrid frameworks (Astro, RSC), keep purely static, non-interactive content as server-rendered markup rather than shipping it as a client component. Client islands add JS and hydration cost and can hide content from crawlers for no benefit when there's no interactivity.
PR: profico-org-corpus batch2 (all stacks/products)Created: Jul 26, 2026
Bad example
Old codeastro
| 1 | --- |
| 2 | import Prices from './Prices.tsx'; |
| 3 | --- |
| 4 | <Prices client:load /> {/* static table shipped + hydrated as JS */} |
Explanation (EN)
A non-interactive price table is shipped as a hydrated client component.
Objašnjenje (HR)
Good example
New codeastro
| 1 | --- |
| 2 | import Prices from './Prices.astro'; |
| 3 | --- |
| 4 | <Prices /> {/* server-rendered HTML, zero client JS */} |
Explanation (EN)
Static content is emitted as HTML on the server with no hydration.
Objašnjenje (HR)