How oleg-perevyshin/elementsui works
This is a Svelte 5 UI-component library for device-interface builders, with a live component gallery. The main workflow is an integrating application importing the public API, supplying component values or device data, and rendering interactive controls, visualizations, maps, and device widgets. Builder-facing property editors configure components, while shared primitives support those editors and drag-based ordering. The README documents broader capabilities than the sampled implementation excerpts; the graph preserves those branches using paths present in the tree, without inferring unsampled internal wiring.
Main entry points: index.ts Library exports · TableProps.svelte Table property editor · InputProps.svelte Input property editor · +layout.svelte Gallery shell
Components 17
Public API
- Library exports
src/lib/index.ts - Component types
src/lib/types.ts
Interface Components
- Inputs and selectors
src/lib/Input/Input.svelte - Buttons and toggles
src/lib/Button/Button.svelte - Tables and charts
src/lib/Table/Table.svelte - Other UI controls
src/lib - Modal dialogs
src/lib/Modal.svelte
Builder Configuration
- Drag ordering
src/lib/Dragging.svelte - Input property editor
src/lib/Input/InputProps.svelte - Table property editor
src/lib/Table/TableProps.svelte - Property editor helpers
src/lib/PropsGroup.svelte
Device Visualizations
- Device widgets
src/lib/WidgetWiFi/WidgetWiFi.svelte - Device map
src/lib/Map/Map.svelte - MapLibre wrappers
src/lib/Map/mapWrapper
Component Gallery
- Gallery shell
src/routes/+layout.svelte - Component showcase
src/routes/components/all/+page.svelte
Other components
- Integrating application
Connections 19
- Integrating application → Library exports: imports API
- Library exports → Component types: exports types
- Library exports → Inputs and selectors: exports controls
- Library exports → Buttons and toggles: exports controls
- Library exports → Tables and charts: exports controls
- Library exports → Other UI controls: exports controls
- Library exports → Modal dialogs: exports dialogs
- Library exports → Drag ordering: exports utility
- Library exports → Device widgets: exports widgets
- Library exports → Device map: exports map
- Input property editor → Inputs and selectors: configures
- Table property editor → Tables and charts: configures
- Input property editor → Property editor helpers: uses helpers
- Table property editor → Property editor helpers: uses helpers
- Table property editor → Modal dialogs: opens settings
- Device map → MapLibre wrappers: composes wrappers
- Gallery shell → Library exports: imports API
- Gallery shell → Component showcase: frames showcase
- Component showcase → Library exports: renders components