Svelte Heroicons
!!!WARNING!!!
With version 3.0.0 , this package is primarily meant for SvelteKit projects and it is not guaranteed to work with other build systems!
Description
- complete heroicon set optimized for svelte
- programatically change solid or outline version based on the
solid
attribute - fully typed for a great IDE experience
- works with SvelteKit & Vite
Install
NPM
npm install svelte-hero-icons
Configuration
- install as
dependency
(important) - Add this to your
vite.config.js
, so all icons are bundled into one file -> no import waterfalls
const config = {
kit: {
vite: {
optimizeDeps: {
include: ["svelte-hero-icons"],
},
},
},
};
export default config;
Usage
- Default is Outline version of icon
- Use solid attribute for Solid Icons
<script>
import { ArrowUp, Filter, ... } from 'svelte-hero-icons'
import Icon from 'svelte-hero-icons/Icon.svelte'
</script>
<Icon src="{Filter}" solid />
<Icon src="{ArrowUp}" size="32" />
<Icon src="{Filter}" class="w-6 h-6 text-red-500" />
See all icons here: https://github.com/refactoringui/heroicons
Known Problems
Windows
If you are developing with Windows you might need to prevent the dependency from being externalized for SSR:
const config = {
kit: {
vite: {
ssr: {
noExternal: ['svelte-hero-icons']
}
}
}
}
Author
This package is based on heroicons