out-of-the-vue

Functional UX components built with Vue 3

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
out-of-the-vue
100.1.0-rc.362 months ago5 months agoMinified + gzip package size for out-of-the-vue in KB

Readme

Out of the Vue

A functional component library based on Vue 3 and Vite


<img src="https://img.shields.io/npm/v/out-of-the-vue.svg" alt="Version">

<img src="https://img.shields.io/npm/dt/out-of-the-vue.svg" alt="Total downloads">
<img src="https://img.shields.io/npm/dm/out-of-the-vue.svg" alt="Monthly downloads">

<img src="https://codecov.io/gh/michaelverschoof/out-of-the-vue/branch/main/graph/badge.svg?token=78XM22TM4V" alt="Code coverage" />
<img src="https://img.shields.io/npm/l/out-of-the-vue.svg" alt="License">

Introduction

Out-of-the-vue is a Vue component library focused on offering functionality rather than design. No more messing around with the same functionalities (such as form field validations, modals, etc.) for each project, so you can focus on your features.
The project provides a very minimal design for layout but other than that, you're completely free to make it your own.

Features

  • Lightweight with automatic tree-shaking
  • Rich features
  • Out-of-the-box TypeScript support
  • Fully tested using Vitest
  • Functionalities can be used as both components as composables
  • Build your own components using the base components as building blocks

Some functionalities:

Out-of-the-vue requires Vue >= v3

  • Most common form field validations with the possibility to add custom validations
  • Adding custom error messages, field helpers and labels
  • User input debouncing
  • Word / character counting
  • Custom content in (for example) checkboxes and radio buttons
  • Opening and closing of modals is provided by the component

Getting started

Installing the package:

$ npm install out-of-the-vue

Using a component in your project:

import { TextField } from 'out-of-the-vue';

```html @created="onCreated" @updated="onUpdated"
<template #label>My text field</template>
<template #required>This field is required</template>
<template #min>Min 10 characters required</template>
<template #max>Max 255 characters allowed</template>
```

License

MIT License © 2022-present Michael Verschoof and out-of-the-vue contributors.