A monorepo with icon-picker component libraries for Vue 3 and React, both searching icons live from Iconify (150+ icon sets, 200,000+ icons). Shared search/selection/sanitization logic lives in packages/core, a private workspace package used by both.
| Package | Framework | npm |
|---|---|---|
vue3-icon-picker |
Vue 3 | |
@arkn/react-icon-picker |
React |
See each package's own README for installation, props, and usage examples.
This monorepo uses pnpm workspaces. Each package has both a -vue and -react variant:
packages/
├── core/ # Shared Iconify search/selection/sanitization logic (private)
├── vue3-icon-picker/ # Vue 3 library
├── react-icon-picker/ # React library
├── playground-vue/ # Vue 3 dev playground
├── playground-react/ # React dev playground
├── docs-vue/ # Vue 3 docs (VitePress)
└── docs-react/ # React docs (VitePress)
pnpm install
# dev playgrounds
pnpm dev:vue
pnpm dev:react
# docs
pnpm docs:vue
pnpm docs:react
# tests
pnpm test:vue
pnpm test:react
# build everything (plugins, playgrounds, docs)
pnpm buildPull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.