{"adoption": {"forks": 497, "observed_at": "2026-08-28T04:10:04.828307+00:00", "stars": 7762}, "canonical_url": "https://ross.abutalabs.com/products/purecss-francine", "card": {"archived": false, "artifact_type": "application", "description": "HTML/CSS drawing in the style of an 18th-century oil painting. Hand-coded entirely in HTML & CSS.", "domain": ["web-development", "frontend", "graphics", "web-design"], "enriched": true, "function": ["graphics", "animation"], "health_score": 20, "homepage": null, "language": "CSS", "license": null, "license_family": "other", "maturity": "maintenance", "member_repos": ["cyanharlow/purecss-francine"], "name": "cyanharlow/purecss-francine", "platform": ["browser"], "pushed_at": "2023-11-06T06:50:37+00:00", "repo": "cyanharlow/purecss-francine", "stars": 7762, "tags": ["css-art", "pure-css", "html-css", "digital-art", "oil-painting", "demo", "creative-coding", "web-server"], "topics": [], "urls": [], "use_cases": ["view a portrait drawn purely in CSS", "study advanced CSS techniques for drawing shapes and shading", "find inspiration for creative coding projects", "demo of what CSS can do without images or JavaScript", "example for talks about CSS capabilities"], "what_it_is": "Pure CSS Francine is a hand-coded artwork depicting an 18th-century oil painting style portrait created entirely with HTML and CSS, with no images, SVG, or JavaScript. It is part of an ongoing series of CSS art by the author and is best viewed in Chrome.", "when_to_avoid": ["you need cross-browser compatibility (it targets Chrome only)", "you need a reusable component or library", "you need production-ready, maintained code"], "when_to_choose": ["you want to explore or learn extreme CSS rendering techniques", "you need a striking demo of CSS-only art", "you are studying hand-coded CSS shading and shape construction"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/purecss-francine", "repo": "cyanharlow/purecss-francine", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:10:04.828307+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:35:08.127122+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b7c3d30432ec011999ac7d5f6c6b67c3b2fca35960e0e8b72f253674d9717e94", "fetched_at": "2026-08-28T04:10:04.828307+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyanharlow/purecss-francine"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:10:04.828307+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:35:08.127122+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b7c3d30432ec011999ac7d5f6c6b67c3b2fca35960e0e8b72f253674d9717e94", "fetched_at": "2026-08-28T04:10:04.828307+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyanharlow/purecss-francine"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:35:08.127122+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b7c3d30432ec011999ac7d5f6c6b67c3b2fca35960e0e8b72f253674d9717e94", "fetched_at": "2026-08-28T04:10:04.828307+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyanharlow/purecss-francine"}], "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:10:04.828307+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:10:04.828307+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:10:04.828307+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:35:08.127122+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b7c3d30432ec011999ac7d5f6c6b67c3b2fca35960e0e8b72f253674d9717e94", "fetched_at": "2026-08-28T04:10:04.828307+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyanharlow/purecss-francine"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:10:04.828307+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:10:04.828307+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:35:08.127122+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b7c3d30432ec011999ac7d5f6c6b67c3b2fca35960e0e8b72f253674d9717e94", "fetched_at": "2026-08-28T04:10:04.828307+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyanharlow/purecss-francine"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:10:04.828307+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:10:04.828307+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:10:04.828307+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:35:08.127122+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b7c3d30432ec011999ac7d5f6c6b67c3b2fca35960e0e8b72f253674d9717e94", "fetched_at": "2026-08-28T04:10:04.828307+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyanharlow/purecss-francine"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:10:04.828307+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:10:04.828307+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:35:08.127122+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b7c3d30432ec011999ac7d5f6c6b67c3b2fca35960e0e8b72f253674d9717e94", "fetched_at": "2026-08-28T04:10:04.828307+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyanharlow/purecss-francine"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:35:08.127122+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b7c3d30432ec011999ac7d5f6c6b67c3b2fca35960e0e8b72f253674d9717e94", "fetched_at": "2026-08-28T04:10:04.828307+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyanharlow/purecss-francine"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:35:08.127122+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b7c3d30432ec011999ac7d5f6c6b67c3b2fca35960e0e8b72f253674d9717e94", "fetched_at": "2026-08-28T04:10:04.828307+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyanharlow/purecss-francine"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:35:08.127122+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b7c3d30432ec011999ac7d5f6c6b67c3b2fca35960e0e8b72f253674d9717e94", "fetched_at": "2026-08-28T04:10:04.828307+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyanharlow/purecss-francine"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3357, "days_push": 1031, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}