Tiny FontAwesome component for Svelte.
npm install svelte-fa
Install FontAwesome icons via official packages, for example:
npm install @fortawesome/free-solid-svg-icons
npm install @fortawesome/free-brands-svg-icons
Icons gallery: FontAwesome icons
You may need to install the component as a devDependency:
npm install svelte-fa -D
You may need to import the component explicitly as below:
import Fa from 'svelte-fa/dist/fa.svelte'
import { faCaretDown, faCaretUp } from '@fortawesome/free-solid-svg-icons/index.es'
When using typescript with SvelteKit/Vite, you may also needed to add type definitions that redirect to the non-index.es export:
// app.d.ts
declare module '@fortawesome/pro-solid-svg-icons/index.es' {
export * from '@fortawesome/pro-solid-svg-icons';
}
<script>
import Fa from 'svelte-fa'
import { faFlag } from '@fortawesome/free-solid-svg-icons'
import { faGithub } from '@fortawesome/free-brands-svg-icons';
</script>
<Fa icon={faFlag} />
<Fa icon={faGithub} />
Fa Properties<Fa
icon={faFlag}
class="bg-gold"
size="2x"
color="#ff0000"
fw
pull="left"
scale={1.2}
translateX={0.2}
translateY={0.2}
rotate={90}
flip="horizontal"
spin
pulse
/>
icon: icon from FontAwesome packages, for example: @fortawesome/free-solid-svg-icons, icons gallery: FontAwesome iconsclass: string values ${your preffered any css class}size: string values xs, sm, lg or 2x, 3x, 4x, ..., ${number}xcolor: string icon color, default currentColorfw: boolean fixed widthpull: string values left, rightscale: number | string transform scale, unit is em, default 1translateX: number | string transform position X, unit is em, default 0translateY: number | string transform position Y, unit is em, default 0flip: string values horizontal, vertical, bothrotate: number | string values 90, 180, 270, 30, -30 ...spin: boolean spin iconspulse: boolean pulse spin iconsimport Fa, {
FaLayers,
FaLayersText,
} from 'svelte-fa';
<FaLayers
size="4x"
pull="left"
>
<Fa icon={faCertificate} />
<FaLayersText
scale={0.25}
rotate={-30}
color="white"
style="font-weight: 900"
>
NEW
</FaLayersText>
</FaLayers>
FaLayers Propertiessize: string values xs, sm, lg or 2x, 3x, 4x, ..., ${number}xpull: string values left, rightFaLayersText Propertiessize: string values xs, sm, lg or 2x, 3x, 4x, ..., ${number}xcolor: string icon color, default currentColorscale: number | string transform scale, unit is em, default 1translateX: number | string transform position X, unit is em, default 0translateY: number | string transform position Y, unit is em, default 0flip: string values horizontal, vertical, bothrotate: number | string values 90, 180, 270, 30, -30 ...<script>
import Fa from 'svelte-fa'
import { faFlag } from '@fortawesome/pro-duotone-svg-icons'
</script>
<Fa
icon={faFlag}
primaryColor="red"
secondaryColor="#000000"
primaryOpacity={0.8}
secondaryOpacity={0.6}
swapOpacity
/>
<script>
import Fa from 'svelte-fa'
import { faFlag } from '@fortawesome/pro-duotone-svg-icons'
const theme = {
primaryColor: 'red',
secondaryColor: '#000000',
primaryOpacity: 0.8,
secondaryOpacity: 0.6,
}
</script>
<Fa
icon={faFlag}
{...theme}
/>
|
Cweili |
Marek Dědič |
Gtmnayan |
Rui Sousa |
Theodore Brown |
Mirco Sanguineti |
|
Alon Krymgand |
Conner |
Kawsar Ahmed |
Mark Volkmann |
Robin Modisch |
Rémi Kalbe |
|
Null |