{"adoption": {"forks": 273, "observed_at": "2026-08-28T04:05:02.011063+00:00", "stars": 1550}, "canonical_url": "https://ross.abutalabs.com/products/30-days-of-html", "card": {"archived": false, "artifact_type": "learning-resource", "description": "A step by step guide to learn the concept of HTML, DOM tree, and web development in 30 days.  These videos may help too: https://www.youtube.com/channel/UC7PNRuno1rzYPb1xLa4yktw", "domain": ["web-development", "frontend", "tutorials", "education"], "enriched": true, "function": ["documentation"], "health_score": 20, "homepage": null, "language": "HTML", "license": null, "license_family": "other", "maturity": "maintenance", "member_repos": ["Asabeneh/30-Days-Of-HTML"], "name": "Asabeneh/30-Days-Of-HTML", "platform": ["cross-platform", "browser"], "pushed_at": "2023-09-08T09:42:26+00:00", "repo": "Asabeneh/30-Days-Of-HTML", "stars": 1550, "tags": ["html", "css", "javascript", "dom", "30-days-challenge", "tutorial", "beginner-friendly", "self-paced-learning"], "topics": ["css3", "html", "html5", "javascript", "web-development", "webdevelopment"], "urls": [], "use_cases": ["learn html from scratch", "step by step html tutorial for beginners", "understand the dom tree structure", "30 day web development challenge", "learn html forms and tables", "self-paced frontend learning resource", "teach myself web development basics"], "what_it_is": "A free 30-day step-by-step curriculum for learning HTML, the DOM tree, and the basics of web development, written by the author of the popular 30 Days of JavaScript series. It is structured as daily lessons with explanations and exercises, covering topics from web fundamentals to forms, tables, and semantic elements.", "when_to_avoid": ["you need an up-to-date reference, as the repo appears incomplete and has not been updated since 2023", "you already know HTML and need advanced or production-level frontend material", "you need a comprehensive CSS or JavaScript course rather than an HTML-focused guide"], "when_to_choose": ["you are a complete beginner wanting a structured, day-by-day HTML curriculum", "you prefer free text-based tutorials with exercises over video courses", "you want to learn HTML alongside basic web development concepts like how the web works"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/30-days-of-html", "repo": "Asabeneh/30-Days-Of-HTML", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:02.011063+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:30:18.606043+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "906578997daa228f95ff878ab93d8dd3b321f0e1445c9de2219ebff3d840bc97", "fetched_at": "2026-08-28T04:05:02.011063+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Asabeneh/30-Days-Of-HTML"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:02.011063+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:30:18.606043+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "906578997daa228f95ff878ab93d8dd3b321f0e1445c9de2219ebff3d840bc97", "fetched_at": "2026-08-28T04:05:02.011063+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Asabeneh/30-Days-Of-HTML"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:30:18.606043+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "906578997daa228f95ff878ab93d8dd3b321f0e1445c9de2219ebff3d840bc97", "fetched_at": "2026-08-28T04:05:02.011063+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Asabeneh/30-Days-Of-HTML"}], "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:05:02.011063+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:02.011063+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:02.011063+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:30:18.606043+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "906578997daa228f95ff878ab93d8dd3b321f0e1445c9de2219ebff3d840bc97", "fetched_at": "2026-08-28T04:05:02.011063+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Asabeneh/30-Days-Of-HTML"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:02.011063+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:02.011063+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:30:18.606043+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "906578997daa228f95ff878ab93d8dd3b321f0e1445c9de2219ebff3d840bc97", "fetched_at": "2026-08-28T04:05:02.011063+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Asabeneh/30-Days-Of-HTML"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:02.011063+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:02.011063+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:02.011063+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:30:18.606043+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "906578997daa228f95ff878ab93d8dd3b321f0e1445c9de2219ebff3d840bc97", "fetched_at": "2026-08-28T04:05:02.011063+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Asabeneh/30-Days-Of-HTML"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:02.011063+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:02.011063+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:30:18.606043+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "906578997daa228f95ff878ab93d8dd3b321f0e1445c9de2219ebff3d840bc97", "fetched_at": "2026-08-28T04:05:02.011063+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Asabeneh/30-Days-Of-HTML"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:30:18.606043+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "906578997daa228f95ff878ab93d8dd3b321f0e1445c9de2219ebff3d840bc97", "fetched_at": "2026-08-28T04:05:02.011063+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Asabeneh/30-Days-Of-HTML"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:30:18.606043+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "906578997daa228f95ff878ab93d8dd3b321f0e1445c9de2219ebff3d840bc97", "fetched_at": "2026-08-28T04:05:02.011063+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Asabeneh/30-Days-Of-HTML"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:30:18.606043+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "906578997daa228f95ff878ab93d8dd3b321f0e1445c9de2219ebff3d840bc97", "fetched_at": "2026-08-28T04:05:02.011063+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Asabeneh/30-Days-Of-HTML"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+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": 2101, "days_push": 1090, "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}}