Creating a Component Library Fast🚀(using Vite's library mode)

This page summarizes the projects mentioned and recommended in the original post on dev.to

SurveyJS - JavaScript Form Builder with No-Code UI & Built-In JSON Schema Editor
Add the SurveyJS white-label form builder to your JavaScript app (React/Angular/Vue3). Build complex JSON forms without coding. Fully customizable, works with any backend, perfect for data-heavy apps. Learn more.
surveyjs.io
featured
InfluxDB – Built for High-Performance Time Series Workloads
InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
www.influxdata.com
featured
  1. css-modules

    Documentation about css-modules

    The components are styled with CSS modules. When building the library, these styles will get transformed to normal CSS style sheets. This means that the consuming application will not even be required to support CSS modules. (In the future I want to extend this tutorial to use vanilla-extract instead.)

  2. SurveyJS

    JavaScript Form Builder with No-Code UI & Built-In JSON Schema Editor. Add the SurveyJS white-label form builder to your JavaScript app (React/Angular/Vue3). Build complex JSON forms without coding. Fully customizable, works with any backend, perfect for data-heavy apps. Learn more.

    SurveyJS logo
  3. vite-plugin-dts

    An unplugin for generating declaration (dts) files.

    As this is a Typescript library you also want to ship type definitions with your package. Fortunately there is a Vite plugin that does exactly this: vite-plugin-dts

  4. vite-plugin-lib-inject-css

    Inject css at the top of chunk file in lib mode using import statement, support multiple entries.

    For this to work, the transpiled JavaScript bundle must contain an import statement for the CSS file. We are going to use yet another Vite plugin (vite-plugin-lib-inject-css) that does exactly what we need with zero configuration.

  5. my-component-library

  6. vite

    Next generation frontend tooling. It's fast!

    If you have never worked with Vite, think of it as a replacement for Create React App. Just a few commands and you are ready to go.

  7. my-component-library-consumer

  8. vanilla-extract

    Zero-runtime Stylesheets-in-TypeScript

    The components are styled with CSS modules. When building the library, these styles will get transformed to normal CSS style sheets. This means that the consuming application will not even be required to support CSS modules. (In the future I want to extend this tutorial to use vanilla-extract instead.)

  9. InfluxDB

    InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • 🧩 What’s a DApp? How Frontends Talk to Smart Contracts on Arbitrum

    1 project | dev.to | 7 May 2025
  • Why Upgrading to Tailwind CSS 4.1.4 Might Be the Best Decision You Make This Year

    1 project | dev.to | 30 Apr 2025
  • From Tailwind CLI to Vite: A Developer’s Journey to Better Performance (2025 Edition)

    2 projects | dev.to | 27 Apr 2025
  • Common Errors in Frontened Setup🛠 - Stock Management System

    1 project | dev.to | 6 Apr 2025
  • Designing and Building an Application with Anima, Figma, and React

    1 project | dev.to | 17 Mar 2025

Did you know that TypeScript is
the 1st most popular programming language
based on number of references?