finds.dev← search

// the find

stenciljs/core

★ 13,129 · TypeScript · NOASSERTION · updated Sep 2026

A toolchain for building scalable, enterprise-ready component systems on top of TypeScript and Web Component standards. Stencil components can be distributed natively to React, Angular, Vue, (+ more) and traditional web applications from a single, framework-agnostic codebase.

Stencil is the compiler Ionic built to generate standard Web Components from a React-like TSX/decorator syntax, so you write components once and ship them as native custom elements usable in Angular, React, Vue, or plain HTML. It's aimed at teams building a design system or component library that has to serve multiple frontend stacks, not at people building a single app.

The output is genuinely framework-agnostic — you get real custom elements with automatic lazy-loading and code-splitting per component, not a React library with a compatibility shim bolted on. It's been battle-tested at scale: it's the toolchain behind Ionic Framework itself, so the compiler has to handle large, real component sets, not just toy examples. Built-in SSR/SSG via the hydrate app output target is a genuine differentiator over most component-library tooling, which punts on server rendering entirely.

The decorator-based API (@Component, @Prop, @State) is a DSL you have to learn on top of TypeScript and JSX, and it doesn't transfer to anything else you'll work on — it's Stencil-only knowledge. Shadow DOM styling and slot projection are where teams hit real friction, especially when a design system needs to support theming across the consuming frameworks it's supposedly agnostic to. The repo's test workflows (jest.config.js alongside a separate test-wdio.yml) suggest an in-progress migration off the old Jest/Puppeteer-based testing story, which has historically been one of Stencil's weaker points compared to component-first tools like Storybook-native setups.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →