Forge
markdowndeeb25a2
1<!-- English translation of adr/0117-ide-skia-kit.md. Canonical Russian: ../../adr/0117-ide-skia-kit.md -->
2
3# ADR 0117: SkiaKit - reusable Skia IDE primitives
4
5**Status:** Accepted · Implemented
6**Date:** 2026-05-17
7
8## Related ADRs
9
10| ADR | Role |
11|-----|------|
12| [0055](0055-skia-instrument-composition-pipeline.md) | Pipeline of cockpit tools (do not mix with SkiaKit) |
13| [0057](0057-chat-surface-pipeline-adoption.md) | First consumer - chat surface |
14| [0064](0064-deck-primitives-visual-language-render-layer-and-palette.md) | PrimitivesKit cockpits vs IDE |
15| [0067](0067-graph-backed-surfaces-contract.md) | Graph-backed surfaces - target consumers |
16
17## Solution
18
19Enter the directory **`Views/SkiaKit/`** - primitive rendering library for IDE-Skia surfaces (analogous to `Views/UiKit/` for Avalonia).
20
21- `SkiaSectionedCard` - card with compartments (signature + separator + lines).
22- `SkiaTileGridLayout` — a grid of tiles.
23- `SkiaKitThemeBridge` - CascadeTheme → `SkiaKitPaintTheme`.
24- `SkiaTextLayout` - line wrapping.
25
26Features (chat, semantic map cards, ...) **assemble the scene** from the kit; the domain and pipeline stages remain in Features/Services.
27
28**Border:** SkiaKit does not import ViewModels, navigation pipeline stages, Cockpit PrimitivesKit.
29
30## Code
31
32`Views/SkiaKit/README.md`
View only · write via MCP/CIDE