More Complicated Custom Components with Stencil.js

Lately, I've been thinking what custom items I want to add to this blog (+ the My language learning blog) and been kicking tyres of Stencil which according to its own documentation is:

Stencil is a toolchain for building reusable, scalable Design Systems. Generate small, blazing fast, and 100% standards based Web Components that run in every browser.

I pick it for two reasons:

  1. I can build custom web components using Typescript and other modern tools...
  2. ..., but I still can deliver it as a single blob of text, even just embed it in a static web page.

Stencil gets to do this because of the build step and the "just javascript" build target.

I am planning to write about the process here in following weeks. With at least following topics:

  1. Creating a very basic component
  2. Creating tests for that very basic component
  3. Building the said component using Github Actions
  4. Styling the component