About
OverviewPerformanceBare tags · RuntimeNative enhancementsHTML6AccessibilityDigital sovereigntyHTML7Law, licenses & IPFile types & viewersLaw as CodeArt. 13 DSGVO liveGlyphMarkdownPlaygroundDesign-DNARoadmap
HTML6 · UI & Presentation 90
<a11y>HTML6<alert>HTML6<app-shell>HTML6<avatar>HTML6<avatar-group>HTML6<badge>HTML6<breadcrumb>HTML6<calendar>HTML6<card>HTML6<carousel>HTML6<chat>HTML6<checkbox>HTML6<codeblock>HTML6<collapsible-tree>HTML6<color-picker>HTML6<combobox>HTML6<command-palette>HTML6<compare>HTML6<context-menu>HTML6<copy>HTML6<countdown>HTML6<data-table>HTML6<date-picker>HTML6<day>HTML6<description-list>HTML6<drawer>HTML6<dropdown-menu>HTML6<editor>HTML6<empty-state>HTML6<field>HTML6<figureblock>HTML6<file-upload>HTML6<form-field>HTML6<function>HTML6<geo>HTML6<glyph>HTML6<graph>HTML6<grid>HTML6<hover-card>HTML6<icon>HTML6<image-gallery>HTML6<include>HTML6<input-otp>HTML6<item>HTML6<katex>HTML6<list>HTML6<list-of>HTML6<lottie>HTML6<marquee>HTML6<menubar>HTML6<mermaid>HTML6<modal>HTML6<model>HTML6<msg>HTML6<navbar>HTML6<pagination>HTML6<pdf>HTML6<player>HTML6<playlist>HTML6<popover>HTML6<progressbar>HTML6<qr>HTML6<quantity-stepper>HTML6<radio-group>HTML6<range>HTML6<rating>HTML6<sidebar>HTML6<signature>HTML6<skeleton>HTML6<skip-nav>HTML6<social-links>HTML6<spinner>HTML6<split>HTML6<split-button>HTML6<stat>HTML6<state>HTML6<stepper>HTML6<switch>HTML6<tab>HTML6<tabs>HTML6<tag>HTML6<time-picker>HTML6<timeline>HTML6<toc>HTML6<toggle>HTML6<toolbar>HTML6<tooltip>HTML6<tree>HTML6<waveform>HTML6<page>HTML6
HTML7 · Vocabulary 54
<abbreviation>HTML7<bibliography>HTML7<citation>HTML7<consent>HTML7<contact>HTML7<datetime>HTML7<document>HTML7<equation>HTML7<event>HTML7<footnote>HTML7<footnotes>HTML7<frist>HTML7<iban>HTML7<legal-accept>HTML7<license>HTML7<norm>HTML7<number>HTML7<paper>HTML7<phone>HTML7<place>HTML7<price>HTML7<product-card>HTML7<ref>HTML7<sepa-mandate>HTML7<since>HTML7<unit>HTML7<action>HTML7<annotation>HTML7<claim>HTML7<claims>HTML7<condition>HTML7<consequence>HTML7<conversation>HTML7<dataset>HTML7<entitlement>HTML7<identifier>HTML7<message>HTML7<metric>HTML7<name>HTML7<notice>HTML7<obligation>HTML7<offer>HTML7<organization>HTML7<otherwise>HTML7<party>HTML7<permission>HTML7<person>HTML7<premise>HTML7<product>HTML7<prohibition>HTML7<signatures>HTML7<statement>HTML7<status>HTML7<task>HTML7
HTML5 & older · the base 142
<a>HTML2<abbr>HTML2<address>HTML2<area>HTML2<article>HTML5<aside>HTML5<audio>+67<b>HTML2<base>HTML2<bdi>HTML5<bdo>HTML2<blockquote>HTML2<body>HTML2<br>HTML2<button>HTML2<canvas>HTML5<caption>HTML2<cite>HTML2<code>HTML2<col>HTML2<colgroup>HTML2<data>HTML5<datalist>HTML5<dd>HTML2<del>HTML2<details>HTML5<dfn>HTML2<dialog>HTML5<div>HTML2<dl>HTML2<dt>HTML2<em>HTML2<embed>+67<fencedframe>HTML5<fieldset>HTML2<figcaption>HTML5<figure>HTML5<footer>HTML5<form>HTML2<h1>HTML2<h2>HTML2<h3>HTML2<h4>HTML2<h5>HTML2<h6>HTML2<head>HTML2<header>HTML5<hgroup>HTML5<hr>HTML2<html>HTML2<i>HTML2<iframe>+67<img>HTML2<input>+67<ins>HTML2<kbd>HTML2<label>HTML2<legend>HTML2<li>HTML2<link>HTML2<main>HTML5<map>HTML2<mark>HTML5<math>HTML5<menu>HTML5<meta>HTML2<meter>HTML5<nav>HTML5<noscript>HTML2<object>+67<ol>HTML2<optgroup>HTML2<option>HTML2<output>HTML5<p>HTML2<picture>HTML5<pre>HTML2<progress>+67<q>HTML2<rp>HTML5<rt>HTML5<ruby>HTML5<s>HTML2<samp>HTML2<script>HTML2<search>HTML5<section>HTML5<select>+67<slot>HTML5<small>HTML2<source>HTML5<span>HTML2<strong>HTML2<style>HTML2<sub>HTML2<summary>HTML5<sup>HTML2<svg>HTML5<table>+67<tbody>HTML2<td>HTML2<template>HTML5<textarea>+67<tfoot>HTML2<th>HTML2<thead>HTML2<time>HTML5<title>HTML2<tr>HTML2<track>HTML5<u>HTML2<ul>HTML2<var>HTML2<video>+67<wbr>HTML5<acronym>deprecated<applet>deprecated<basefont>deprecated<bgsound>deprecated<big>deprecated<center>deprecated<content>deprecated<dir>deprecated<font>deprecated<frame>deprecated<frameset>deprecated<image>deprecated<isindex>deprecated<keygen>deprecated<listing>deprecated<menuitem>deprecated<nobr>deprecated<noembed>deprecated<noframes>deprecated<param>deprecated<plaintext>deprecated<rb>deprecated<rtc>deprecated<spacer>deprecated<strike>deprecated<tt>deprecated<xmp>deprecated
Web Components · not DOM 30
wc-button-grouppropwc-icon-buttonpropwc-toggle-grouppropwc-uncertaintypropwc-accordionvariantwc-alert-dialogvariantwc-panelvariantwc-ringvariantwc-sitemap-navvariantwc-animationbehaviorwc-annotatablebehaviorwc-collapsiblebehaviorwc-scrollytellingbehaviorwc-sortablebehaviorwc-toastbehaviorwc-tourbehaviorwc-zoom-framebehaviorwc-aspect-ratiocsswc-clipcsswc-columnscsswc-containercsswc-floatingcsswc-prosecsswc-resizablecsswc-scroll-areacsswc-scrollercsswc-separatorcsswc-stackcsswc-sourcesinternalwc-tangled-treeinternal
Components 19
All componentsButtonsInputsSelection controlsData displayCitingScientific apparatusLive dataOverlays & menusNavigationDisclosure & layoutLists & tablesCharts & graphsMaps & 3DMediaCode, docs & markupEditorsUtilitiesForms & legalDIN 5008 letter
Examples 48
All examplesAnalytics headerDashboardApp shell + sidebarTable pageRecord detailList-detail / inboxKanbanCalendarChatFile browserSettingsOnboardingPricingProfileEmpty stateCommand palette ⌘KLoginSignupAnalytics dashboardTangled treeCalendar heatmapShop: Product gridShop: Product detailShop: Collection bannerShop: Filter facetsShop: Cart drawerShop: CheckoutShop: Order summaryShop: 3D productBlog: Article listBlog: Article + GlyphUpMedium: Long-form readWeb: HeroWeb: Nav headerWeb: Feature gridWeb: Logo cloudWeb: TestimonialsWeb: FAQWeb: CTA bannerWeb: NewsletterWeb: Social linksWeb: FooterForm: ContactForm: Schema builderMap: Contact + OSMLegal: ImprintLegal: Privacy policyLegal: GDPR request
Legal
ImpressumDatenschutz

HTML67

HTML67 — two hands holding the <html67/> logo
<!doctype html67>

HTML, thought further.

Cards, charts, maps, legal and science vocabulary as native tags — one stylesheet, one script, 0 build steps. Every page stays valid HTML5; the runtime upgrades the bare tags in place. 120 elements on top of HTML5.

HTML67 is part of Project Wilhelm and in daily use: the Wilhelm site, its editors and this documentation are written in it. Four examples, all live:

Signature<signature>
Map<geo>
Graph<graph>
YearApps in the stack
20203
20219
202214
202322
202431
202542
202653
GlyphUp<glyph>
Software [- rented -] [+ owned +], as █ digital public infrastructure █ ( ✶ that is the whole point ) and @hope+( done by 2030 ). GlyphUp is the next [- Markdown -] [+ Markdown, native in HTML67 +]: a few plain characters mark a █ highlight █, a deletion, an insertion or a comment ( ✶ like this one ) right in the text. Nothing to install, nothing to build — the file stays HTML.
Drag cards by their title bar — the content is live

Get started

No install, no bundler, no dependencies. A page is a file.

Open a blank HTML67 page or download it as new.html. Runtime and editor travel inside the file — write tags, hit ✎ Edit, save.

Or one line on any page
<script src="https://html67.com/dist/html67.min.js"></script>

Why HTML67 — the kitchen sink, told in four pictures

The official HTML standard calls itself a kitchen sink — the basin where everything ends up. One sink, for everything. It's honest. It's even funny. And it's the whole problem.

Graphic 1 — the kitchen sink (HTML5, the specification)
            ┌────────────────────────────────────────┐
            │  CSS    SVG    MathML   ServiceWorkers  │   built on top
            └────────────────────────────────────────┘
 ┌───────┐  ┌────────────────────────────────────────┐
 │ IDB   │  │                                        │
 │ Fetch │  │             THE  SINK                  │   ← HTML
 │ CSP   │  │         "this specification"           │
 │ PNG   │  │                                        │
 │ Opus  │  │                                        │
 │ AV1   │  │                                        │
 └───────┘  └────────────────────────────────────────┘
  tools     ┌────────────────────────────────────────┐
 alongside  │ HTTP  TLS  DOM  Unicode  WebIDL         │   the plumbing
            │ MIME  URL  XML  JavaScript  Encoding    │   it stands on
            └────────────────────────────────────────┘

It's called a living standard, but living things need tending — and lately, no one has. The basin fills with everything that doesn't fit: utility classes, widgets, a dozen CDNs, framework after framework re-solving the same problem.

Graphic 2 — real life HTML5
    we now build ▸  documents · apps · layouts · interfaces
                        (far more than the basin was meant to hold)
                                     ▲
 sink-embeds ◂ <model-viewer> ◂ threejs ◂ iframes ◂ video-players
      ╲          ╲           │           ╱          ╱
            ┌────────────────────────────────────────┐
            │  CSS    SVG    MathML   ServiceWorkers  │   still on top
            └────────────────────────────────────────┘
 ┌───────┐  ┌────────────────────────────────────────┐
 │ IDB   │  │  🗑 tailwind   🗑 bootstrap   🗑 jQuery   │ ──cdn #7
 │ Fetch │  │  🗑 react   🗑 vue   🗑 the 14th frmwrk  │ ──polyfill
 │ CSP   │  │  💩 widgets   💩 utility-class soup      │ ──shim
 │ PNG   │  │  🗑 dep  🗑 dep  🗑 dep   ☠ css won't    │ ──cdn #1
 │ Opus  │  │       ~ ~ ~  grey water  ~ ~ ~ ~ ~      │
 │ AV1   │  │             THE  SINK  (clogged)        │ ← HTML
 └───────┘  └────────────────────────────────────────┘
  tools     ┌────────────────────────────────────────┐
 alongside  │ HTTP  TLS  DOM  Unicode  WebIDL         │   the plumbing
 + webasm   │ MIME  URL  XML  JavaScript  Encoding    │   (ground shifting)
            └────────────────────────────────────────┘

So we're upgrading the sink. Everything that used to balance on the rim moves inside, as native elements. Every filetype gets a home. The basin is clean ceramic again.

Graphic 3 — HTML6
      ┌──────────────────────────────────────────────────┐
      │  CSS   SVG   MathML   ServiceWorkers              │
      │  + Markdown  + Webapps  + Documents  + Editors    │   built on top
      └──────────────────────────────────────────────────┘
 ┌────────┐  ┌──────────────────────────────────────────────────┐
 │ IDB    │  │                                                  │
 │ Fetch  │  │                                                  │
 │ CSP    │  │                                                  │
 │ PNG    │  │              A  CLEANER  BASIN                   │  ← HTML6
 │ Opus   │  │          meaning · structure · design            │
 │ AV1    │  │                                                  │
 │ MP4    │  │                                                  │
 │ OBJ    │  │                                                  │
 │ GLB    │  │                                                  │
 │ ICS    │  │                                                  │
 │ PDF    │  │                                                  │
 │ WEBP   │  │                                                  │
 └────────┘  └──────────────────────────────────────────────────┘
 tools +     ┌──────────────────────────────────────────────────┐
 filetypes,  │ HTTP  TLS  DOM  Unicode  WebIDL                   │  the plumbing
 now native  │ MIME  URL  XML  JavaScript  Encoding  + WebAssembly│  it stands on
             └──────────────────────────────────────────────────┘

And HTML7 connects the basin to the water: the page's obligations to the world it lives in — units, sources, licenses, deadlines, regional rules — as vocabulary the page carries itself. <norm> resolves § 433 BGB, <unit> formats to your locale, <cite> builds its own bibliography.

Graphic 4 — HTML7
      ┌──────────────────────────────────────────────────┐
      │  CSS   SVG   MathML   ServiceWorkers              │
      │  + GlyphMarkdown  + Webapps  + Documents + Editors │   built on top
      └──────────────────────────────────────────────────┘
 ┌────────┐  ┌──────────────────────────────────────────────────┐
 │ IDB    │  │                                                  │
 │ Fetch  │  │                                                  │
 │ CSP    │  │                                                  │
 │ PNG    │  │              THE  LIVING  BASIN                  │  ← HTML7
 │ Opus   │  │          meaning · structure · design            │
 │ AV1    │  │       + <norm> <cite> <unit> <license>           │
 │ MP4    │  │                                                  │
 │ OBJ    │  │                                                  │
 │ GLB    │  │                                                  │
 │ ICS    │  │                                                  │
 │ PDF    │  │                                                  │
 │ WEBP   │  │                                                  │
 └────────┘  └─────┬─┬────────────┬─┬──────────────────┬─┬──────┘
 tools +           │ │            │ │                  │ │
 filetypes,        │ │            │ │                  │ │
 now native       (   )─(⏱)      (   )─(⏱)            (   )─(⏱)
                 analytics      legal               legal
                 + OpenGraph    regulatories        standards (in)
      ┌────────────┴─┴────────────┴─┴──────────────────┴─┴──────┐
      │  Law · Rights · Invoices · Bathrooms · Local Adapters    │
      │  DSGVO · SEPA · BGB · currency · OpenGraph · SEO · meta   │  the water main
      └──────────────────────────────────────────────────────────┘
           the community · the city · the state · the EU

The elements

Grouped by family, not one long list. Open a family for its tags; every tag links to a live demo with its markup. Chips with a dot are HTML7 vocabulary, the rest HTML6 UI — and the HTML5 base is documented in the same reference.

button-group

Prop · not an element
Not an element — this is Prop. <button-group> is deliberately not an HTML67 tag; it stays as the wl-button-group web component or becomes a prop/CSS.

Button Group

Instead

<button group>…</button>

Details

RoleProp (not an element)
Implementationwl-button-group
Bare tag?no — not aliased

icon-button

Prop · not an element
Not an element — this is Prop. <icon-button> is deliberately not an HTML67 tag; it stays as the wl-icon-button web component or becomes a prop/CSS.

Icon Button

Instead

<button icon>…</button>

Details

RoleProp (not an element)
Implementationwl-icon-button
Bare tag?no — not aliased