This is a fresh start for the `artcraft` repo. The old monorepo, which included our web API gateway, job services, SRE tools, various frontends, and more has moved to `artcraft-services` You can find the full git history here: https://github.com/storytold/artcraft-services This change was motivated by the fact that the entire git history was hundreds of gigabytes in size, which is unwieldy for anyone not in the core team that doesn't care about support services outside of the core artcraft app. We wanted to keep this repo in its well-known place since we already have users and activity here. Please update your remotes to either `artcraft-services` or make a fresh clone of this repo. History can be found at the artcraft-services repo. |
||
|---|---|---|
| .. | ||
| src | ||
| README.md | ||
| package.json | ||
| tsconfig.json | ||
| tsconfig.lib.json | ||
| vite.config.ts | ||
README.md
@storyteller/icons
Companion lib for Lucide icons. Regular icons come straight from
lucide-react — import them directly:
import { PlayIcon } from 'lucide-react';
<PlayIcon className="h-4 w-4" />
This lib holds the pieces Lucide doesn't provide:
dynamic-icon.tsx—<DynamicIcon icon={active ? PauseIcon : PlayIcon} />for icons chosen at runtime (item.icon, conditional toggles). Static call sites should render the Lucide component directly.brand-icons.tsx— brand logos (DiscordIcon,TiktokIcon, ...) as inlined SVG paths; Lucide ships no brand marks by policy.custom-icons.tsx— icons with no Lucide equivalent (HighDefinitionIcon/StandardDefinitionIconquality badges), drawn in Lucide's stroke style.
Sizing: each app's global stylesheet sets .lucide { width/height: 1.2em } so Lucide icons
scale with the surrounding font size (1.2em because Lucide draws on a 20px grid inside its
24px viewBox — the visible mark then fills a full em, matching the previous solid-glyph
icon sizes). Explicit Tailwind sizing classes still win. Brand icons from this lib are
full-bleed paths and default to a plain 1em.