Skip to main content

Crate ishou_render

Crate ishou_render 

Source
Expand description

ishou-render — target-specific renderers from ishou_tokens::TokenSet.

Every renderer is a pure function: TokenSet → String. Determinism is a test invariant — same tokens produce byte-identical output.

Morphism table (identical in spirit to arch-synthesizer’s morphism graph):

SourceTargetModule
TokenSetCSS custom properties + utility classescss
TokenSettailwind.config.jstailwind
TokenSetSCSS variablesscss
TokenSetRust pub const modulerust
TokenSetW3C Design Tokens JSONjson
TokenSetGLSL #define headerglsl
TokenSetGhostty config blockghostty
TokenSetTUI ratatui / crossterm Color tabletui
TokenSetSVG (brand mark + swerve)svg
TokenSetstylix base16 YAMLstylix
TokenSetbase16 bat .tmTheme (Sublime plist)bat

Modules§

bat
bat renderer — emits a base16 Sublime-Text .tmTheme (XML plist) that bat (the cat clone) consumes as a custom theme.
css
CSS renderer — emits :root { ... } custom properties + a small set of opinionated utility classes (brand typography, shadow modifiers, swerve backdrop). The utility layer is narrow on purpose — consumers use Tailwind for general utility, ishou owns the brand-critical pieces.
fleet_fonts
Fleet-fonts renderer — typed Nix attrset every pleme-io GUI app’s home-manager module imports to (a) name the canonical font family and (b) install the underlying nixpkgs package via home.packages.
ghostty
Ghostty renderer — emits a Ghostty config block binding palette indices and cursor / selection / background colors.
glsl
GLSL renderer — emits a #define / const header consumable by the 13 blackmatter-ghostty shaders. Drop-in replacement for their hand-written nord-common.glsl.
json
JSON renderer — emits W3C Design Tokens-style JSON so Figma / Style Dictionary / downstream tools can import.
md3
Material Design 3 system-color renderer — emits the 34 --md-sys-color-* CSS custom properties Material consumers (e.g. pleme-mui) expect, every one MAPPED from the ishou TokenSet. This is the render target that lets the Material component library consume ishou instead of forking its own hard-coded MD3 palette — the move that collapses the design-system fork (ishoupleme-mui/irodori) the fleet audit named.
nix
Nix renderer — emits an importable Nix expression for the Nord palette in the shape every pleme-io HM wrapper historically carried locally ({ polar = { night0 = "…"; … }; snow = …; frost = …; aurora = …; }).
nix_ast
Typed Nix AST + printer.
rust
Rust renderer — emits a pub const module for consumers that want compile-time colors (e.g., TUI apps not wanting to deserialize JSON).
scss
SCSS renderer — emits $ishou-... variables. Mirror of CSS.
stylix
Stylix base16 renderer — emits the YAML format nix-community/stylix consumes for stylix.base16Scheme.
stylix_fonts
Stylix fonts renderer — emits the Nix attrset shape stylix.fonts.* consumes ({ monospace = { name = …; package = …; }; sansSerif = …; serif = …; emoji = …; }).
svg
SVG renderer — stamps the brand mark (a swerve inside the viewbox) as a standalone SVG document. Variants: mark, mark-mono-black, mark-mono-white.
tailwind
Tailwind renderer — emits a complete tailwind.config.js with colors, fonts, spacing, radius, and shadow extensions keyed off ishou tokens.
tui
TUI renderer — emits Rust code binding ishou colors to ratatui / crossterm Color::Rgb. Designed to be pasted into a TUI app’s theme.rs or written to a file and included via include!.
vellum
Vellum render targets — the stylix base16/base24 schemes + an SVG palette preview, all sourced from the BORN VellumPalette tokens.

Enums§

Target
Every renderable target ishou-cli understands. The string here matches the CLI flag users type (ishou render --target css).