A lit-based web component library.
Current Version: unknown
unknown
Install using NPM.
npm install kempo-ui
or clone the git repo
git clone https://github.com/dustinpoissant/kempo-ui.git
or download directly
Collapsible sections with smooth animations and toggle controls.
Enhanced sidebar component with push and overlay modes.
Month-grid date picker widget with single and range selection modes.
Container component with optional labels and border styling.
Chat-room widget with rich-text input, send-on-enter option, and per-message state tracking.
Monaco-powered code editor with language support and theme integration.
Searchable dropdown with debounced search events, dynamic options, and keyboard navigation.
Advanced color selection supporting all CSS color formats with alpha transparency.
Swipeable carousel for images and content with navigation controls.
Non-rendering state container for sharing data and notifying descendant components of changes.
Modal dialogs with focus trapping and customizable buttons.
Action menus with keyboard navigation and customizable positioning.
Show or hide items based on a search term matching their filter keywords.
Trap keyboard focus within a container for accessibility.
WYSIWYG editor with formatting tools and dual editing modes.
Renders the markdown text inside the element as sanitized HTML in place.
Markdown editor with Write/Preview tabs, slot-based toolbars, and a tiny safe parser (no inline HTML).
Display SVG icons from a collection with customizable size and color.
Dynamically load and include HTML snippets into your pages.
Fixed navigation bar with automatic elevation applied at the correct stacking level.
Auto-sizing spacer that offsets page content below a fixed nav bar.
Lightbox gallery for viewing images with zoom and navigation.
A progress bar for loading states.
Draggable handle to resize adjacent elements dynamically.
Button group where one option can be selected at a time with support for custom sub-components.
Truncate long content with a "show more" button to expand.
Range input with configurable min, max, and discrete step snap points.
Drag-and-drop lists with reordering and sort events.
Microphone button that uses the Web Speech API to transcribe spoken input.
Loading indicators with multiple styles and sizes.
Resizable split panes with horizontal or vertical layouts.
Feature-rich data tables with sorting, filtering, and pagination.
Tabbed interface for organizing content into switchable panels.
Input field for adding and removing tags with keyboard support.
Button that speaks the given text aloud using the browser's SpeechSynthesis API.
Dropdown select for choosing between Light, Dark, and System Default themes.
Toggle between light, dark, and auto theme modes.
Time picker with 12/24-hour display, configurable minute increments, and form submission.
Display formatted dates and times with relative formatting.
Notification messages that appear temporarily at screen corners.
Switch component for boolean values with custom styling.
Hierarchical data visualization with collapsible branches and custom leaf types.
Custom video player with slot-based controls, double-tap seeking, and playback persistence.
Dropdown of available speech-synthesis voices, persisted via the voice utility for site-wide use.
Base class for components with shadow DOM and scoped styles.
Base class for components that render directly to light DOM.
Base class combining shadow and light DOM rendering.
closest() that walks past shadow-DOM boundaries to find an ancestor.
Functions for managing browser cookies.
Global or named shared state for vanilla JS components.
Delay function execution until after a specified wait period.
Handle mouse and touch drag interactions with cleanup.
Format dates into human-readable relative or absolute strings.
Type converters for Lit component properties and attributes.
Whitelist HTML sanitizer for user-submitted rich text. Strips unsafe tags, attributes, and URL schemes.
Collection of functions for string manipulation and conversion.
Centralized theme management with persistence and reactive updates.
Functions for checking and identifying JavaScript value types.
Functions for manipulating and analyzing JavaScript objects.
Persisted speech-synthesis voice preference with pub/sub, mirroring the theme utility.
Functions for creating delays and waiting for animation frames.