Skip to content

Welcome to Affino

Affino provides framework-agnostic UI cores paired with lightweight adapters for Vue 3 and React 18. Build intent-aware menus, high-performance virtualization, and spreadsheet-grade selection without compromising on accessibility or control.

Architecture

Every Affino primitive follows a core + adapter pattern:

  • Core packages — Pure TypeScript logic, zero framework deps, full test coverage
  • Framework adapters — Thin reactive wrappers for Vue and React

This keeps the state machines portable while letting you stay in your framework's idioms.

Packages

PackageDescriptionVersion
@affino/menu-coreHeadless menu engine with diagonal pointer prediction, keyboard nav, nested submenusnpm
@affino/menu-vueVue 3 adapter with renderless components and controller hooksnpm
@affino/menu-reactReact 18 adapter mirroring the Vue API surfacenpm

→ Menu documentation

Virtualization (Coming Soon)

PackageDescription
@affino/virtualization-coreHigh-performance virtual scrolling engine

Selection (Coming Soon)

PackageDescription
@affino/selection-coreSpreadsheet-grade cell selection with keyboard/mouse navigation

Getting Started

bash
# Menu (Vue)
npm install @affino/menu-vue

# Menu (React)
npm install @affino/menu-react

See Menu Getting Started for full setup.

Snapshot preview

The block below is a static rendering of the default glassmorphic menu skin used in the demos. It is decorative only.

MIT Licensed