Skip to the content

Notifications

Starter

An empty page with the shell around it. Copy this file, give it a title, and put your own markup where the box is.

Your content

Everything outside this box — the sidebar, the header, the footer, the ground switch, the toasts and the confirm dialog — comes from layouts/base.njk and needs nothing from you.

The whole file

{% extends "layouts/base.njk" %}
{% from "macros/ui.njk" import pagehead %}
{% set title = "Your page" %}
{% block content %}

{% call pagehead("Your page", "One line saying what it is for.") %}
  <button class="btn btn-primary">The one action that matters</button>
{% endcall %}

<section class="card p-5">
  <h2 class="text-md font-semibold">A section</h2>
</section>

{% endblock %}

Drop it in src/templates/pages/, add a line to src/data/site.json if it belongs in the navigation, and run npm run build. The validator will tell you if anything is missing.

Coffer v1.0.0 Halden & Roe LLP — fiscal year ending 31 Dec 2026 All figures in USD

Are you sure?