{"adoption": {"forks": 201, "observed_at": "2026-08-28T04:06:22.955304+00:00", "stars": 2178}, "canonical_url": "https://ross.abutalabs.com/products/skiko", "card": {"archived": false, "artifact_type": "library", "description": "Kotlin Multiplatform bindings to Skia", "domain": ["graphics", "cross-platform", "developer-tools"], "enriched": true, "function": ["graphics", "image-processing", "ui-components"], "health_score": 100, "homepage": null, "language": "Kotlin", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["JetBrains/skiko"], "name": "JetBrains/skiko", "platform": ["windows", "browser", "wasm", "jvm"], "pushed_at": "2026-08-26T18:12:50+00:00", "repo": "JetBrains/skiko", "stars": 2178, "tags": ["skia", "kotlin-multiplatform", "2d-graphics", "rendering", "window-management", "awt", "linux", "macos", "android", "ios"], "topics": [], "urls": [], "use_cases": ["render 2D graphics with Skia from Kotlin", "build custom canvas-based UI rendering in Kotlin Multiplatform", "embed a Skia rendering layer in a Swing/AWT application", "draw graphics in the browser with Kotlin/JS and WebAssembly", "use Skia APIs on iOS and Android from shared Kotlin code"], "what_it_is": "Skiko is a Kotlin Multiplatform library that exposes the Skia graphics library APIs to Kotlin, along with rendering context and window management glue code. It underpins Compose Multiplatform rendering across JVM, Android, iOS, macOS, and browser (JS/WASM) targets.", "when_to_avoid": ["you just want a ready-made UI toolkit - use Compose Multiplatform instead", "you need Skia bindings for a language other than Kotlin", "you need 3D graphics rather than Skia's 2D API surface"], "when_to_choose": ["you need direct Skia API access from Kotlin across multiple platforms", "you are building a custom rendering engine or UI toolkit on Kotlin Multiplatform", "you need hardware-accelerated 2D drawing in a JVM desktop app"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/skiko", "repo": "JetBrains/skiko", "role": "main", "score": 94}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:22.955304+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:48:47.798277+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4d113ce37613c0ffa405d8602507c5db11fbfae798babcbc8081288fd17a2377", "fetched_at": "2026-08-28T04:06:22.955304+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JetBrains/skiko"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:22.955304+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:48:47.798277+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4d113ce37613c0ffa405d8602507c5db11fbfae798babcbc8081288fd17a2377", "fetched_at": "2026-08-28T04:06:22.955304+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JetBrains/skiko"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:48:47.798277+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4d113ce37613c0ffa405d8602507c5db11fbfae798babcbc8081288fd17a2377", "fetched_at": "2026-08-28T04:06:22.955304+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JetBrains/skiko"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:06:22.955304+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:22.955304+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:22.955304+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:48:47.798277+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4d113ce37613c0ffa405d8602507c5db11fbfae798babcbc8081288fd17a2377", "fetched_at": "2026-08-28T04:06:22.955304+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JetBrains/skiko"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:22.955304+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:22.955304+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:48:47.798277+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4d113ce37613c0ffa405d8602507c5db11fbfae798babcbc8081288fd17a2377", "fetched_at": "2026-08-28T04:06:22.955304+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JetBrains/skiko"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:22.955304+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:22.955304+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:22.955304+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:48:47.798277+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4d113ce37613c0ffa405d8602507c5db11fbfae798babcbc8081288fd17a2377", "fetched_at": "2026-08-28T04:06:22.955304+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JetBrains/skiko"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:22.955304+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:22.955304+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:48:47.798277+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4d113ce37613c0ffa405d8602507c5db11fbfae798babcbc8081288fd17a2377", "fetched_at": "2026-08-28T04:06:22.955304+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JetBrains/skiko"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:48:47.798277+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4d113ce37613c0ffa405d8602507c5db11fbfae798babcbc8081288fd17a2377", "fetched_at": "2026-08-28T04:06:22.955304+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JetBrains/skiko"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:48:47.798277+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4d113ce37613c0ffa405d8602507c5db11fbfae798babcbc8081288fd17a2377", "fetched_at": "2026-08-28T04:06:22.955304+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JetBrains/skiko"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:48:47.798277+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4d113ce37613c0ffa405d8602507c5db11fbfae798babcbc8081288fd17a2377", "fetched_at": "2026-08-28T04:06:22.955304+00:00", "kind": "readme", "missing": false, "url": "https://github.com/JetBrains/skiko"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 83}, "computed_at": "2026-09-03T02:39:23.370411+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2228, "days_push": 7, "days_rel": 33, "gap_med": 6.0, "n_releases_24m": 71}, "score": 94, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}