Static and SSR fidelity

Static site and SSR targets share the same authored widget tree as native targets, but they do not have every native runtime capability. The right model is progressive fidelity: use typed Fission primitives, let the site shell lower what can be represented in HTML/CSS, and keep interactive host work explicit.
They also share DocumentShellConfig, so document presentation does not drift based on when a page is rendered. FissionSite and FissionServerApp expose the same APIs for themes, generated design systems, packaged fonts, favicons, syntax highlighting, custom CSS, route-filtered page elements, head markup, body-end markup, structured data, and retained footers.
let site = FissionSite::new()
    .with_design_system::<ProductDesignSystem>(DesignMode::Light)
    .favicon("/assets/icon.svg")
    .head_html("<meta name=\"product\" content=\"catalog\">")
    .footer_widget::<AppState, _>(ProductFooter);

let server = FissionServerApp::new("Product")
    .with_design_system::<ProductDesignSystem>(DesignMode::Light)
    .favicon("/assets/icon.svg")
    .head_html("<meta name=\"product\" content=\"catalog\">")
    .footer_widget::<AppState, _>(ProductFooter);
Locale and metadata selection follow the same sequence on both targets: seed the environment, select a locale, then resolve document metadata with the locale-aware render context. Static site performs that work at build time and honours locale front matter; SSR performs it for each request.

What lowers well

Fission primitive
Static site
SSR
Length points, percent, viewport units, clamp
CSS lengths and clamp() where possible
CSS lengths and clamp() where possible
Responsive viewport cases
CSS/media-rule style branch selection
CSS/media-rule style branch selection
Responsive container query
Lowered when static constraints can express it
Lowered where request/runtime supports container sizing
GridTrack points/fr/auto/minmax/repeat/auto-fit
CSS grid tracks
CSS grid tracks
Solid fills, gradients, borders, radius, shadows
CSS paint
CSS paint
Packaged fonts
Emitted as font assets where configured
Emitted as font assets where configured
Backdrop blur
CSS backdrop-filter if supported by browser
CSS backdrop-filter if supported by browser

What needs care

Animations, jobs, services, and capabilities still need a runtime. Static output can describe the initial state and now preserves portals and browser surface registrations, but it cannot perform user-triggered host work without a client runtime or island. SSR additionally owns request-only behavior such as sessions, signed actions, cache policy, response status, dynamic parameters, workers, and islands. Static site uniquely owns content discovery, generated search files, redirects, sitemap/robots output, and link checking.
Prefer declarative layout primitives for pages that must statically render well. Use imperative viewport logic only when the result can still be evaluated by the target shell.