/vanilla-components

A lightweight, flexible & customizable UI library for Vue 3, styled with Tailwind CSS.

Primary LanguageVueMIT LicenseMIT

Vanilla Components

A lightweight, flexible & customizable ui library for Vue 3

Documentation | Getting Started | Why Vanilla Components?

Main Features โœจ

  • ๐Ÿงช DX Focused - Write less code & build faster
  • ๐Ÿ›  Totally Configurable - All components & props are fully customizable via a simple configuration file
  • ๐Ÿšฆ Variants Concept - Create multiple variants of the same components. Ex: Error, Success, etc.
  • ๐Ÿƒ Tailwind First - Comes with a sane styling using Tailwind CSS Defaults
  • ๐Ÿฆพ Vue + TypeScript - Vue 3 setup + Typescript
  • ๐ŸŸข Vue 3 Ready - Vue 3
  • ๐ŸŒณ Tree Shakable - Import only the components that you need without worry about the size
  • โœ‹ ZERO css included - Everything is configurable, means there is no CSS's to include at all
  • ๐ŸŒœ Dark/White - Pixel Perfect design with Dark & White mode included
  • ๐Ÿ”Œ SSR Ready - Built with SSR in mind

Installation

Get started by installing the peer dependencies than, move on installing the package

pnpm add @headlessui/vue@^1.5.0 @popperjs/core@^2.11.2 flatpickr@^4.6.9 libphonenumber-js@^1.9.49 
pnpm add @flavorly/vanilla-components

Import the components as needed with the following:

import { Button } from '@flavorly/vanilla-components'

Local & Documentation

For preview & Local testing please run the following on the root of the project. After the commands you should have a local vite server up & running.

pnpm install
pnpm -r build
pnpm docs:dev

To start fresh, simply run the following commands

pnpm clean
pnpm install
pnpm -r build
pnpm docs:dev

Lunr ( Algolia Alternative )

Lunr replaces the default Vitepress Algolia Search To get the project index correctly do the following:

pnpm docs:index:build

Credits

Thanks to:

  • VariantJS - Base Inspiration & Code - Thanks to Alfonsobries
  • VueUse - How we could we not credit this?
  • RobertBoes - For all the time helping with Troubleshooting
  • Enzo Innocenzi - For the inspiration & help!
  • All my friends, that could stay online while i was whispering all day long!

Contribution

See Contributing Guide.

License

MIT License ยฉ 2021-Present Pedro Martins