svelte-bi
v0.0.8
Published
Bootstrap Icons for Svelte 5
Readme
svelte-bi
Bootstrap SVG Icons for Svelte >= 5 components
Why svelte-bi?
- Performance-Focused: Only the icons you actually use are included in your final application bundle, thanks to tree-shaking. No more importing a massive library for just a few icons.
- Easy to Use: Import icons as you would any other Svelte component.
- Fully Customizable: Easily control size, color, and other SVG attributes directly with props.
- TypeScript Support: Written entirely in TypeScript for a great developer experience.
- Complete Set: Includes all icons from the latest version of Bootstrap Icons.
Install
# npm
npm install svelte-bi
# bun
bun add svelte-bi
# deno
deno add npm:svelte-bi
# pnpm
pnpm add svelte-bi
# yarn
yarn add svelte-biUsage
Import from package
Component Naming Instructions
When calling the component, follow these steps:
Capitalize the First Letter of Each Word:
- Take the symbol name and ensure that the first letter of every word is capitalized. For example, if the symbol name is
arrow-90deg-left, it should be transformed toArrow90degLeft.
- Take the symbol name and ensure that the first letter of every word is capitalized. For example, if the symbol name is
Remove Hyphens:
- Remove any hyphens (-) from the symbol name. This helps in creating a clean and readable component name.
Add Prefix:
- Add the prefix
Bito the beginning of the transformed symbol name. This indicates that the component is part of the Bootstrap icon set.
- Add the prefix
Putting it all together, if the original symbol name is arrow-90deg-left, the final component name will be BiArrow90degLeft.
For example:
0-square-fill => Bi0SquareFill
airplane-engines-fill => BiAirplaneEnginesFill<script>
import { Bi0SquareFill, BiAirplaneEnginesFill, BiGithub } from "svelte-bi";
</script>
<Bi0SquareFill />
<BiAirplaneEnginesFill />Props
size (optional)
Changes the dimensions of the icon.
type: number | string, default: 16
<script>
import { BiGithub } from "svelte-bi";
</script>
<BiGithub size="43" />fill (optional)
Changes the color of the icon.
type: string, default: currentColor
<script>
import { BiGithub } from "svelte-bi";
</script>
<BiGithub fill="tomato" />class (optional)
type: HTML class attribute, default: null
<script>
import { BiGithub } from "svelte-bi";
</script>
<BiGithub class="pe-3 ms-2" />...rest (optional)
type: HTML attributes
<script>
import { BiGithub } from "svelte-bi";
</script>
<BiGithub onclick={(e) => console.log(e.target)} data-foo="bar" />Develop
Deno required
# git
git clone https://github.com/sachinsancheti1/svelte-bi.git
# github-cli
gh repo clone sachinsancheti1/svelte-bi
cd svelte-bi
deno install
deno run -A main.ts
deno task package