flexy-components
v0.5.1
Published
See [Documentation](https://nureon22.github.io/flexy-components/) for available components
Readme
Flexy UI Components
See Documentation for available components
This project is still in development and not ready for production use
What is Flexy UI?
Flexy UI is a collection of flexible and customizable web components designed to enhance native HTML elements. Each component builds on standard HTML functionality while adding useful features and behaviors.
You can use components directly in plain HTML without writing any JavaScript. However, if you add components dynamically after the page has loaded, JavaScript initialization is required.
Some components include more complex HTML templates, which must be written manually. This can be repetitive or inconvenient when reusing components across multiple pages or projects.
To simplify this, helper libraries for popular frameworks like React, Angular, Svelte, and Hugo will be provided once the core library is complete. These helpers let you integrate components seamlessly without manually writing templates.
Why use Flexy UI?
Customizable
All components come with design tokens that allow you to easily customize their appearance, layout, and animations, making it simple to match your brand or project style.
High Performance
Flexy UI components are designed to include only the essential features, reducing unnecessary JavaScript execution. Some components even require no JavaScript at all, ensuring smooth, performant user interfaces.
Components Roadmap
In Progress
- Button
- Checkbox
- ProgressBar
- Radio
- Slider
- Switch
- Tabs
- TextField
- Tooltip
Comming Soon
- Menu
- ProgressSpinner
Usage
Flexy Components can be used either via NPM or CDN, depending on your project setup.
Using NPM
For static websites where all components templates are already present in the HTML from the start:
import 'flexy-components/styles';
import 'flexy-components';If you need to add components dynamically after the page has loaded, you can import and initialize them individually:
import 'flexy-components/styles';
import { FlexyCheckboxComponent } from 'flexy-components';
const checkbox = document.querySelector('#your-checkbox.flexy-checkbox');
new FlexyCheckboxComponent(checkbox);Via CDN
Include the stylesheet and script directly in your HTML:
<link
rel="stylesheet"
href="https://cdn.jsdelivr.net/npm/flexy-components/dist/iife/main.css"
/>
<script
defer
src="https://cdn.jsdelivr.net/npm/flexy-components/dist/iife/main.js"
></script>