Contact

This page is rendered fresh by Phoenix on every request

dynamic

Not prerendered. Every request goes through the full Phoenix pipeline: router, controller, template.

Why Dynamic?

Some pages should NOT be prerendered. Contact forms, user dashboards, search results, and pages with personalized content need to be rendered fresh on every request.

This page is a standard Phoenix controller action. It goes through the full pipeline every time: router matching, controller dispatch, template rendering.

How to keep a page dynamic: simply don't include it in a prerender do block and don't add metadata: %{prerender: true}.

Send a Message

This form is disabled because this is a demo. In a real app, this page would process submissions dynamically.

Router Code

# This route is outside the prerender block
scope "/", DemoWeb do
  pipe_through :browser

  get "/contact", PageController, :contact
end

Server time: 06:52:50 UTC

Refresh the page — the time updates because this page is rendered fresh every time.