{"adoption": {"forks": 181, "observed_at": "2026-08-28T04:09:11.004877+00:00", "stars": 5129}, "canonical_url": "https://ross.abutalabs.com/products/mvp", "card": {"archived": false, "artifact_type": "library", "description": "MVP.css — Minimalist classless CSS stylesheet for HTML elements", "domain": ["web-development", "frontend", "web-design"], "enriched": true, "function": ["css-framework", "ui-components", "theme"], "health_score": 72, "homepage": "https://andybrewer.github.io/mvp/", "language": "HTML", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["andybrewer/mvp"], "name": "andybrewer/mvp", "platform": ["browser"], "pushed_at": "2026-02-27T18:01:09+00:00", "repo": "andybrewer/mvp", "stars": 5129, "tags": ["classless-css", "semantic-html", "stylesheet", "prototyping", "mvp", "css-reset", "no-build-step", "minimalist-design", "web-server", "nodejs"], "topics": ["classless", "classless-css", "css", "cssframework", "semantic-ui"], "urls": [], "use_cases": ["style a plain HTML page without writing CSS or learning a framework", "rapidly prototype a startup MVP with decent default styling", "add a lightweight CSS reset with sensible component styling to any project", "build a mobile-friendly landing page using only semantic HTML", "get clean-looking forms, buttons, blockquotes, and dialogs with zero class names", "quickly make internal tools or docs pages look presentable"], "what_it_is": "MVP.css is a minimalist classless CSS stylesheet that styles semantic HTML elements out of the box, with no class names or framework conventions to learn. It is distributed as a single ~10kb CSS file that can be linked via CDN, npm, or downloaded directly, making it ideal for rapid prototyping and MVPs.", "when_to_avoid": ["you need a full design system with complex layouts, grids, or theming", "your project requires utility-first CSS or component libraries like Tailwind or Bootstrap", "you need fine-grained control over every visual detail", "you are building a large application with custom branding requirements"], "when_to_choose": ["you want out-of-the-box styling for semantic HTML with no build step", "you are prototyping an MVP and want to spend time building, not designing", "you prefer classless CSS over utility classes or component frameworks", "you need a small, MIT-licensed stylesheet that is easy to customize"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/mvp", "repo": "andybrewer/mvp", "role": "main", "score": 65}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:09:11.004877+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:02:02.834368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e4329355db3d5a2d6d263cd0cfaf37d3d233693f0a6e9962f79306946c55fdf5", "fetched_at": "2026-08-28T04:09:11.004877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andybrewer/mvp"}, {"content_hash": "c6be90afdcbb2f9eca58b8fffd0219ab7d848aacd650553226159dab81010b72", "fetched_at": "2026-08-29T08:56:34.099865+00:00", "kind": "homepage", "missing": false, "url": "https://andybrewer.github.io/mvp/"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:09:11.004877+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:02:02.834368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e4329355db3d5a2d6d263cd0cfaf37d3d233693f0a6e9962f79306946c55fdf5", "fetched_at": "2026-08-28T04:09:11.004877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andybrewer/mvp"}, {"content_hash": "c6be90afdcbb2f9eca58b8fffd0219ab7d848aacd650553226159dab81010b72", "fetched_at": "2026-08-29T08:56:34.099865+00:00", "kind": "homepage", "missing": false, "url": "https://andybrewer.github.io/mvp/"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:02:02.834368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e4329355db3d5a2d6d263cd0cfaf37d3d233693f0a6e9962f79306946c55fdf5", "fetched_at": "2026-08-28T04:09:11.004877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andybrewer/mvp"}, {"content_hash": "c6be90afdcbb2f9eca58b8fffd0219ab7d848aacd650553226159dab81010b72", "fetched_at": "2026-08-29T08:56:34.099865+00:00", "kind": "homepage", "missing": false, "url": "https://andybrewer.github.io/mvp/"}], "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:09:11.004877+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:09:11.004877+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:09:11.004877+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:02:02.834368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e4329355db3d5a2d6d263cd0cfaf37d3d233693f0a6e9962f79306946c55fdf5", "fetched_at": "2026-08-28T04:09:11.004877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andybrewer/mvp"}, {"content_hash": "c6be90afdcbb2f9eca58b8fffd0219ab7d848aacd650553226159dab81010b72", "fetched_at": "2026-08-29T08:56:34.099865+00:00", "kind": "homepage", "missing": false, "url": "https://andybrewer.github.io/mvp/"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:09:11.004877+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:09:11.004877+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:02:02.834368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e4329355db3d5a2d6d263cd0cfaf37d3d233693f0a6e9962f79306946c55fdf5", "fetched_at": "2026-08-28T04:09:11.004877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andybrewer/mvp"}, {"content_hash": "c6be90afdcbb2f9eca58b8fffd0219ab7d848aacd650553226159dab81010b72", "fetched_at": "2026-08-29T08:56:34.099865+00:00", "kind": "homepage", "missing": false, "url": "https://andybrewer.github.io/mvp/"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:09:11.004877+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:09:11.004877+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:09:11.004877+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:02:02.834368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e4329355db3d5a2d6d263cd0cfaf37d3d233693f0a6e9962f79306946c55fdf5", "fetched_at": "2026-08-28T04:09:11.004877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andybrewer/mvp"}, {"content_hash": "c6be90afdcbb2f9eca58b8fffd0219ab7d848aacd650553226159dab81010b72", "fetched_at": "2026-08-29T08:56:34.099865+00:00", "kind": "homepage", "missing": false, "url": "https://andybrewer.github.io/mvp/"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:09:11.004877+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:09:11.004877+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:02:02.834368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e4329355db3d5a2d6d263cd0cfaf37d3d233693f0a6e9962f79306946c55fdf5", "fetched_at": "2026-08-28T04:09:11.004877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andybrewer/mvp"}, {"content_hash": "c6be90afdcbb2f9eca58b8fffd0219ab7d848aacd650553226159dab81010b72", "fetched_at": "2026-08-29T08:56:34.099865+00:00", "kind": "homepage", "missing": false, "url": "https://andybrewer.github.io/mvp/"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:02:02.834368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e4329355db3d5a2d6d263cd0cfaf37d3d233693f0a6e9962f79306946c55fdf5", "fetched_at": "2026-08-28T04:09:11.004877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andybrewer/mvp"}, {"content_hash": "c6be90afdcbb2f9eca58b8fffd0219ab7d848aacd650553226159dab81010b72", "fetched_at": "2026-08-29T08:56:34.099865+00:00", "kind": "homepage", "missing": false, "url": "https://andybrewer.github.io/mvp/"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:02:02.834368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e4329355db3d5a2d6d263cd0cfaf37d3d233693f0a6e9962f79306946c55fdf5", "fetched_at": "2026-08-28T04:09:11.004877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andybrewer/mvp"}, {"content_hash": "c6be90afdcbb2f9eca58b8fffd0219ab7d848aacd650553226159dab81010b72", "fetched_at": "2026-08-29T08:56:34.099865+00:00", "kind": "homepage", "missing": false, "url": "https://andybrewer.github.io/mvp/"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:02:02.834368+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e4329355db3d5a2d6d263cd0cfaf37d3d233693f0a6e9962f79306946c55fdf5", "fetched_at": "2026-08-28T04:09:11.004877+00:00", "kind": "readme", "missing": false, "url": "https://github.com/andybrewer/mvp"}, {"content_hash": "c6be90afdcbb2f9eca58b8fffd0219ab7d848aacd650553226159dab81010b72", "fetched_at": "2026-08-29T08:56:34.099865+00:00", "kind": "homepage", "missing": false, "url": "https://andybrewer.github.io/mvp/"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 69, "longevity": 100, "rhythm": 40}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2380, "days_push": 187, "days_rel": 657, "gap_med": 28, "n_releases_24m": 2}, "score": 65, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}