Skip to content

Getting Started

And Web Components ships as framework-agnostic Custom Elements (built with Stencil), plus generated wrappers for Angular, React, and Vue.

Terminal window
pnpm add @andersseen/web-components @andersseen/icon

Use the @andersseen/astro integration — it registers every component and icon automatically:

astro.config.mjs
import { defineConfig } from 'astro/config';
import andersseen from '@andersseen/astro';
export default defineConfig({
integrations: [andersseen()],
});
import { defineAllCustomElements } from '@andersseen/web-components';
import { registerAllIcons } from '@andersseen/icon';
defineAllCustomElements();
registerAllIcons();

Then load the design tokens so components render styled:

import '@andersseen/web-components/style.css';

Install the generated wrapper package instead and import components directly — no manual defineCustomElement calls needed:

Terminal window
pnpm add @andersseen/angular-components # or @andersseen/react-components / @andersseen/vue-components

Themes and color palettes are plain CSS custom properties, switched with an attribute on <html>:

<html and-theme="compact" and-color="slate-amber"></html>

See each component’s page in the sidebar for its full API (properties, events, CSS parts) and a live usage example.