@blueforge-studio/os-icons

OS-logo icon set for the downloads-experience family — Apple, Windows, Linux, Android, ChromeOS, Ubuntu, Debian, Fedora. Framework-free catalog entry point plus React and Astro component builds and a <symbol> sprite.

Información del paquete

Latest Version0.1.0
LicenseMIT
Keywordsicons, svg, os, logo, sprite, astro, react
Repositorygit+https://github.com/blueforge-studio/blueforge-org.git
Author-
Homepagehttps://github.com/blueforge-studio/blueforge-org#readme
Bugs[object Object]

Versiones

VersiónPublicada
0.1.02026-09-28

Cadena de suministro por versión

VersiónFirmaSBOMAtt
0.1.0

Haz clic en una versión para ver sus detalles.

Cadena de suministro

Procedencia

Publicado por
web:14
Cuándo
2026-09-28T13:33:31Z
sha256 (calculado por el registro)
efde68ed0b1c2edc81688c793e9b374e5e911421bec23bef4cbf6e25a8f48e36

Observado por el registro en el momento de publicar.

Declarado por la compilación

Quien publicó no declaró nada sobre su compilación.

Adjuntos

Firma
ninguno
SBOM
ninguno

Dependencias

Cargando el grafo de dependencias...

README

@blueforge-studio/os-icons

OS-logo icon set for the downloads-experience family — 8 icons: Apple, Windows, Linux (Tux), Android, ChromeOS, Ubuntu, Debian, Fedora.

Artwork comes from simple-icons (CC0-1.0), pinned exactly in devDependencies (see scripts/sync-sources.mjs for why: windows was removed upstream in simple-icons v12, so the pin is load-bearing). Canonical 24×24 currentColor sources live in svg/*.svg; everything in dist/ is generated from them.

Install / use

Root entry (framework-free — catalog metadata + sprite):

import { OS_ICONS, SYMBOL_IDS, iconKeys, spriteSvg } from "@blueforge-studio/os-icons";

React (react >= 18 peer, optional):

import { AppleIcon } from "@blueforge-studio/os-icons/react";
<AppleIcon size={32} class="os-logo" title="macOS download" />

Astro:

---
import { WindowsIcon } from "@blueforge-studio/os-icons/astro";
// or a single file: import WindowsIcon from "@blueforge-studio/os-icons/astro/WindowsIcon.astro";
---
<WindowsIcon size={32} class="os-logo" />

Sprite (for the blueforge catalog and any <use>-based renderer):

import { spritePath, symbolIds } from "@blueforge-studio/os-icons/sprite";
import { spriteSvg } from "@blueforge-studio/os-icons";
// spriteSvg() -> full <svg><symbol id="bf-os-*">…</symbol></svg> string
// spritePath  -> "./dist/sprite/sprite.svg" (shipped file)

Scripts

ScriptWhat it does
pnpm sync-sourcesRegenerates svg/*.svg from the pinned simple-icons
pnpm buildgenerate → tsc → fix-esm-imports → verify-exports
pnpm testBuilds, then runs vitest against dist/
pnpm typechecktsc --noEmit over hand-written src/

Tests intentionally import from ../dist/… so a green test run also proves the package exports map matches the build output.

License

MIT (code). Icon artwork: CC0-1.0 via simple-icons.