{"adoption": {"forks": 634, "observed_at": "2026-08-28T04:09:33.763915+00:00", "stars": 5961}, "canonical_url": "https://ross.abutalabs.com/products/developer-handbook", "card": {"archived": false, "artifact_type": "learning-resource", "description": "An opinionated guide on how to become a professional Web/Mobile App Developer.", "domain": ["web-development", "education", "frontend", "mobile-development", "tutorials"], "enriched": true, "function": ["documentation", "developer-tools"], "health_score": 20, "homepage": "https://apptension.com", "language": null, "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["apptension/developer-handbook"], "name": "apptension/developer-handbook", "platform": ["cross-platform"], "pushed_at": "2024-02-16T13:24:15+00:00", "repo": "apptension/developer-handbook", "stars": 5961, "tags": ["career-guide", "handbook", "onboarding", "learning-path", "javascript", "react", "python", "aws", "sql", "web-server"], "topics": ["learning-python", "handbook", "learn-to-code", "guidelines", "learning-js", "developer-documentation", "career-guide", "guidebook", "career-plan", "career-development", "career-path", "javascript", "react", "css", "js", "aws", "python", "sql", "databases"], "urls": [], "use_cases": ["learn how to become a web developer", "find a career roadmap for frontend development", "prepare for a developer job interview", "plan what technologies to learn as a junior developer", "onboard new developers onto a web team", "compare an opinionated production tech stack for React and Python"], "what_it_is": "An opinionated, MIT-licensed handbook by Apptension covering how to become a professional Web/Mobile App Developer. It documents the company's technical stack, recommended learning topics, and onboarding checklists for frontend, backend, and mobile developers.", "when_to_avoid": ["you need exhaustive, vendor-neutral coverage of every technology", "you want interactive tutorials or exercises rather than reference guides", "you need deep documentation of a single specific framework"], "when_to_choose": ["you want an opinionated, curated learning path for web or mobile development", "you need a checklist of skills expected at different seniority levels", "you want to align a team's technical documentation and onboarding"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/developer-handbook", "repo": "apptension/developer-handbook", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:09:33.763915+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:50:24.243265+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "21c91792632fcafed67eb0c342abbf022457d5c5ffa4ea333cd54c897b73cfec", "fetched_at": "2026-08-28T04:09:33.763915+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apptension/developer-handbook"}, {"content_hash": "97f0f19160012428de9f317136f3b3d4cefe9e462c2f2fd8d2644d5375b26af3", "fetched_at": "2026-08-29T08:46:23.640538+00:00", "kind": "homepage", "missing": false, "url": "https://apptension.com"}, {"content_hash": "93a62e9faf7e1b028ec2c41e5d9214bb27013b7bb6c268d284d3e53d28195ef6", "fetched_at": "2026-08-29T08:46:23.650529+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/about"}, {"content_hash": "f619689d592c17df3c066288b703289415d38a516895df411570d235031de6ff", "fetched_at": "2026-08-29T08:46:23.655068+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/developer-handbook"}, {"content_hash": "88b14ec91d3be5ec973787a435905b96ca30faaa91f32b9d7babb01a110cd944", "fetched_at": "2026-08-29T08:46:23.652703+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/services/generative-ai-solutions"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:09:33.763915+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:50:24.243265+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "21c91792632fcafed67eb0c342abbf022457d5c5ffa4ea333cd54c897b73cfec", "fetched_at": "2026-08-28T04:09:33.763915+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apptension/developer-handbook"}, {"content_hash": "97f0f19160012428de9f317136f3b3d4cefe9e462c2f2fd8d2644d5375b26af3", "fetched_at": "2026-08-29T08:46:23.640538+00:00", "kind": "homepage", "missing": false, "url": "https://apptension.com"}, {"content_hash": "93a62e9faf7e1b028ec2c41e5d9214bb27013b7bb6c268d284d3e53d28195ef6", "fetched_at": "2026-08-29T08:46:23.650529+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/about"}, {"content_hash": "f619689d592c17df3c066288b703289415d38a516895df411570d235031de6ff", "fetched_at": "2026-08-29T08:46:23.655068+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/developer-handbook"}, {"content_hash": "88b14ec91d3be5ec973787a435905b96ca30faaa91f32b9d7babb01a110cd944", "fetched_at": "2026-08-29T08:46:23.652703+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/services/generative-ai-solutions"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:50:24.243265+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "21c91792632fcafed67eb0c342abbf022457d5c5ffa4ea333cd54c897b73cfec", "fetched_at": "2026-08-28T04:09:33.763915+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apptension/developer-handbook"}, {"content_hash": "97f0f19160012428de9f317136f3b3d4cefe9e462c2f2fd8d2644d5375b26af3", "fetched_at": "2026-08-29T08:46:23.640538+00:00", "kind": "homepage", "missing": false, "url": "https://apptension.com"}, {"content_hash": "93a62e9faf7e1b028ec2c41e5d9214bb27013b7bb6c268d284d3e53d28195ef6", "fetched_at": "2026-08-29T08:46:23.650529+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/about"}, {"content_hash": "f619689d592c17df3c066288b703289415d38a516895df411570d235031de6ff", "fetched_at": "2026-08-29T08:46:23.655068+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/developer-handbook"}, {"content_hash": "88b14ec91d3be5ec973787a435905b96ca30faaa91f32b9d7babb01a110cd944", "fetched_at": "2026-08-29T08:46:23.652703+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/services/generative-ai-solutions"}], "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:33.763915+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:09:33.763915+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:09:33.763915+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:50:24.243265+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "21c91792632fcafed67eb0c342abbf022457d5c5ffa4ea333cd54c897b73cfec", "fetched_at": "2026-08-28T04:09:33.763915+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apptension/developer-handbook"}, {"content_hash": "97f0f19160012428de9f317136f3b3d4cefe9e462c2f2fd8d2644d5375b26af3", "fetched_at": "2026-08-29T08:46:23.640538+00:00", "kind": "homepage", "missing": false, "url": "https://apptension.com"}, {"content_hash": "93a62e9faf7e1b028ec2c41e5d9214bb27013b7bb6c268d284d3e53d28195ef6", "fetched_at": "2026-08-29T08:46:23.650529+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/about"}, {"content_hash": "f619689d592c17df3c066288b703289415d38a516895df411570d235031de6ff", "fetched_at": "2026-08-29T08:46:23.655068+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/developer-handbook"}, {"content_hash": "88b14ec91d3be5ec973787a435905b96ca30faaa91f32b9d7babb01a110cd944", "fetched_at": "2026-08-29T08:46:23.652703+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/services/generative-ai-solutions"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:09:33.763915+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:09:33.763915+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:50:24.243265+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "21c91792632fcafed67eb0c342abbf022457d5c5ffa4ea333cd54c897b73cfec", "fetched_at": "2026-08-28T04:09:33.763915+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apptension/developer-handbook"}, {"content_hash": "97f0f19160012428de9f317136f3b3d4cefe9e462c2f2fd8d2644d5375b26af3", "fetched_at": "2026-08-29T08:46:23.640538+00:00", "kind": "homepage", "missing": false, "url": "https://apptension.com"}, {"content_hash": "93a62e9faf7e1b028ec2c41e5d9214bb27013b7bb6c268d284d3e53d28195ef6", "fetched_at": "2026-08-29T08:46:23.650529+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/about"}, {"content_hash": "f619689d592c17df3c066288b703289415d38a516895df411570d235031de6ff", "fetched_at": "2026-08-29T08:46:23.655068+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/developer-handbook"}, {"content_hash": "88b14ec91d3be5ec973787a435905b96ca30faaa91f32b9d7babb01a110cd944", "fetched_at": "2026-08-29T08:46:23.652703+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/services/generative-ai-solutions"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:09:33.763915+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:09:33.763915+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:09:33.763915+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:50:24.243265+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "21c91792632fcafed67eb0c342abbf022457d5c5ffa4ea333cd54c897b73cfec", "fetched_at": "2026-08-28T04:09:33.763915+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apptension/developer-handbook"}, {"content_hash": "97f0f19160012428de9f317136f3b3d4cefe9e462c2f2fd8d2644d5375b26af3", "fetched_at": "2026-08-29T08:46:23.640538+00:00", "kind": "homepage", "missing": false, "url": "https://apptension.com"}, {"content_hash": "93a62e9faf7e1b028ec2c41e5d9214bb27013b7bb6c268d284d3e53d28195ef6", "fetched_at": "2026-08-29T08:46:23.650529+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/about"}, {"content_hash": "f619689d592c17df3c066288b703289415d38a516895df411570d235031de6ff", "fetched_at": "2026-08-29T08:46:23.655068+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/developer-handbook"}, {"content_hash": "88b14ec91d3be5ec973787a435905b96ca30faaa91f32b9d7babb01a110cd944", "fetched_at": "2026-08-29T08:46:23.652703+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/services/generative-ai-solutions"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:09:33.763915+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:09:33.763915+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:50:24.243265+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "21c91792632fcafed67eb0c342abbf022457d5c5ffa4ea333cd54c897b73cfec", "fetched_at": "2026-08-28T04:09:33.763915+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apptension/developer-handbook"}, {"content_hash": "97f0f19160012428de9f317136f3b3d4cefe9e462c2f2fd8d2644d5375b26af3", "fetched_at": "2026-08-29T08:46:23.640538+00:00", "kind": "homepage", "missing": false, "url": "https://apptension.com"}, {"content_hash": "93a62e9faf7e1b028ec2c41e5d9214bb27013b7bb6c268d284d3e53d28195ef6", "fetched_at": "2026-08-29T08:46:23.650529+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/about"}, {"content_hash": "f619689d592c17df3c066288b703289415d38a516895df411570d235031de6ff", "fetched_at": "2026-08-29T08:46:23.655068+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/developer-handbook"}, {"content_hash": "88b14ec91d3be5ec973787a435905b96ca30faaa91f32b9d7babb01a110cd944", "fetched_at": "2026-08-29T08:46:23.652703+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/services/generative-ai-solutions"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:50:24.243265+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "21c91792632fcafed67eb0c342abbf022457d5c5ffa4ea333cd54c897b73cfec", "fetched_at": "2026-08-28T04:09:33.763915+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apptension/developer-handbook"}, {"content_hash": "97f0f19160012428de9f317136f3b3d4cefe9e462c2f2fd8d2644d5375b26af3", "fetched_at": "2026-08-29T08:46:23.640538+00:00", "kind": "homepage", "missing": false, "url": "https://apptension.com"}, {"content_hash": "93a62e9faf7e1b028ec2c41e5d9214bb27013b7bb6c268d284d3e53d28195ef6", "fetched_at": "2026-08-29T08:46:23.650529+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/about"}, {"content_hash": "f619689d592c17df3c066288b703289415d38a516895df411570d235031de6ff", "fetched_at": "2026-08-29T08:46:23.655068+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/developer-handbook"}, {"content_hash": "88b14ec91d3be5ec973787a435905b96ca30faaa91f32b9d7babb01a110cd944", "fetched_at": "2026-08-29T08:46:23.652703+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/services/generative-ai-solutions"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:50:24.243265+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "21c91792632fcafed67eb0c342abbf022457d5c5ffa4ea333cd54c897b73cfec", "fetched_at": "2026-08-28T04:09:33.763915+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apptension/developer-handbook"}, {"content_hash": "97f0f19160012428de9f317136f3b3d4cefe9e462c2f2fd8d2644d5375b26af3", "fetched_at": "2026-08-29T08:46:23.640538+00:00", "kind": "homepage", "missing": false, "url": "https://apptension.com"}, {"content_hash": "93a62e9faf7e1b028ec2c41e5d9214bb27013b7bb6c268d284d3e53d28195ef6", "fetched_at": "2026-08-29T08:46:23.650529+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/about"}, {"content_hash": "f619689d592c17df3c066288b703289415d38a516895df411570d235031de6ff", "fetched_at": "2026-08-29T08:46:23.655068+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/developer-handbook"}, {"content_hash": "88b14ec91d3be5ec973787a435905b96ca30faaa91f32b9d7babb01a110cd944", "fetched_at": "2026-08-29T08:46:23.652703+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/services/generative-ai-solutions"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:50:24.243265+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "21c91792632fcafed67eb0c342abbf022457d5c5ffa4ea333cd54c897b73cfec", "fetched_at": "2026-08-28T04:09:33.763915+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apptension/developer-handbook"}, {"content_hash": "97f0f19160012428de9f317136f3b3d4cefe9e462c2f2fd8d2644d5375b26af3", "fetched_at": "2026-08-29T08:46:23.640538+00:00", "kind": "homepage", "missing": false, "url": "https://apptension.com"}, {"content_hash": "93a62e9faf7e1b028ec2c41e5d9214bb27013b7bb6c268d284d3e53d28195ef6", "fetched_at": "2026-08-29T08:46:23.650529+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/about"}, {"content_hash": "f619689d592c17df3c066288b703289415d38a516895df411570d235031de6ff", "fetched_at": "2026-08-29T08:46:23.655068+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/developer-handbook"}, {"content_hash": "88b14ec91d3be5ec973787a435905b96ca30faaa91f32b9d7babb01a110cd944", "fetched_at": "2026-08-29T08:46:23.652703+00:00", "kind": "site_page", "missing": false, "url": "https://apptension.com/services/generative-ai-solutions"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2245, "days_push": 929, "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}}