Welcome to Vanilla Breeze
This bell pulls live notifications from /go/notify/messages — the same contract documented at /docs/concepts/service-contracts/. Static articles like this one are the no-JS / no-backend fallback.
This bell pulls live notifications from /go/notify/messages — the same contract documented at /docs/concepts/service-contracts/. Static articles like this one are the no-JS / no-backend fallback.
Four focused builds. Each one starts with plain semantic HTML, layers on data-* attributes, swaps in custom elements where they earn their keep, and reaches for a web component only when JavaScript is genuinely required.
The same four steps, every time. Once you've finished one tutorial, the next one feels familiar.
Write the content with native elements — <header>, <section>, <form>, <article>. The page works in Lynx.
Add data-layout, data-layout-gap, data-layout-max on the elements you already have. No wrappers, no classes.
Reach for <layout-card>, <form-field>, <status-message> when CSS alone can't give you the shape you need.
Add <data-table>, <accordion-wc>, <toast-msg> — but only where JavaScript adds something the page genuinely needs.
Start anywhere. Each one is self-contained and takes 10–15 minutes.
You only need a text editor and a browser. No Node, no build step, no framework. If you haven't yet, skim the Quick Start — it sets up the one-line install these tutorials assume.