Core modules 0.9.0 extension
Tree-shakeable JavaScript modules under core/ — separate from CSS and Web Components in components/.
Layout
velinstyle/
core/
search/ types.js, engine.js, highlight.js, providers.js, index.js
motion/ scheduler.js, effects.js, stagger.js, scroll.js, index.js
attributes/ registry.js, index.js
components/ velin-search.js, velin-modal.js, …
cli/ search-index.js, docs-generate.js
core/search
VelinSearchEngine— in-memory fuzzy + substring scoringvelinSearch— singleton:loadIndex(),query()createSearch()— isolated instance per widgetregisterSearchProvider(id, fn)— merge custom entrieshighlightHtml(text, query)— safe<mark class="velin-search-hit">
core/motion
initMotion(options?)— IO + stagger + smooth scroll bindingsobserveInView(el, callback)— rAF-batched visibilityapplyEffects(el, attrs)— map attributes to CSS classessmoothScrollTo(target)— reduced-motion aware
core/attributes
registerAttribute(name, { enhance })bootAttributes(root)— scan DOM, lazy WC loadlistRegisteredAttributes()— 25+ built-ins
core/highlight (0.9.0)
initHighlight() — lazy language registry, MutationObserver for velin-code / pre code. Subpath: @birdapi/velinstyle/highlight.
core/meta
velin-meta export and velin-agent.json agent bundle — see Velin-Meta guide.
sanitize / email / secure
Package exports: @birdapi/velinstyle/sanitize, ./email, ./secure — used by components and PII tooling.
components/runtime
bootFromDOM() registers only components present in the page. Prefer over full IIFE when bundle size matters.
0.8.0 components
velin-reveal, velin-flip — declarative motion; in 0.9 prefer core/motion and velin-* attributes (see Motion guide).
npm exports
"@birdapi/velinstyle/search": "./core/search/index.js",
"@birdapi/velinstyle/motion": "./core/motion/index.js",
"@birdapi/velinstyle/attributes": "./core/attributes/index.js"
Related: VelinSearch, Motion guide, JavaScript API.