Skip to content
@erikakers/slate

Components

One page per component family in src/components/, each showing the real markup rendered by the real stylesheet: nothing annotated, nothing propped up, the same principle demo/specimen.html's own header states for the package's own specimen. Sixteen files, fifteen pages: _code-block.scss and_syntax.scss share one page below, because docs/code.md already treats the panel and the three-highlighter map as one topic rather than two.

Native elements

<dialog>, <details>, <table> and the form controls, styled as the elements they are: no wrapper divs, no required class names, no JavaScript component layer. docs/components.md carries the decisions the code cannot, including the three tags@erikakers/typography leaves open.

  • Dialog: modal and non-modal, one treatment, the browser draws the difference.
  • Disclosure: details/summary, no script anywhere.
  • Table: the scroll wrapper, the caption's reversed spacing, the row-header rule.
  • Form controls: the two states colour alone may not carry, and what the platform draws itself.

Generic components

Idioms a design system draws that HTML has no tag for: mostly classes, a couple of tags taken on their own meaning. docs/generic.md carries which components take an element and which take only a class, and why the answer differs from the native layer's.

Code and syntax

The panel, the header strip, the AA contrast opt-in, and all three highlighter class conventions on one set of tokens.