-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathplatform-profile.github.json
More file actions
81 lines (81 loc) · 6.9 KB
/
Copy pathplatform-profile.github.json
File metadata and controls
81 lines (81 loc) · 6.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
{
"_comment": "ENRICHED github platform profile — extends the THIN github entry already present in the installed growth-os references/platform_profiles.json. This is a repo artifact; merge field-by-field into the skill's platform_profiles.json deliberately, do NOT clobber the existing entry. Base fields kept compatible with the reddit/hackernews/existing-github convention; github-specific extension blocks (growth_surfaces, trending_algorithm, breakout_triggers, readme_first_screen_norms) are ADDED and explicitly non-standard — no other platform carries them. Every stat cites RESEARCH-CORPUS.md. Fields marked TODO(evidence) have no in-corpus source and must not be treated as facts.",
"name": "GitHub",
"primary_metric": "stars",
"secondary_metrics": ["forks", "contributors", "watchers", "downloads"],
"_secondary_metrics_note": "Kept forks/contributors/watchers to stay compatible with the existing entry's [forks, watchers, issues_opened, contributors]; added 'downloads' (package-registry + release-asset, public) as the adoption proxy per OpenSauced. 'clones' deliberately EXCLUDED from the metric set: Traffic API needs push access, 14-day rolling, no backfill — unavailable for advised (non-owned) repos. See RESEARCH-CORPUS.md and automation-spec.md Gate 5 caveat.",
"content_format": "repository_readme",
"max_title_length": {
"repo_description": 350,
"hn_show_hn_title": 80,
"_note": "Split per asset because the rubric's launch-title dimension scores an HN/Reddit title (~80 char practical cap), NOT the repo description. 350 approximates GitHub's About-field limit and is TODO(evidence): not established in RESEARCH-CORPUS.md; corpus-measured description length is median 133, range 26-301 chars. Use the corpus range to score, not 350."
},
"supports_media": true,
"supports_markdown": true,
"tone": "technical_documentation",
"best_for_stages": ["launch", "growth"],
"best_for_categories": ["developer_tools", "open_source", "ai_ml"],
"_best_for_categories_note": "Matches the existing entry exactly (developer_tools/open_source/ai_ml). 'saas_b2b' was dropped — no corpus basis.",
"audience_traits": [
"developers_only",
"readme_is_the_landing_page",
"will_inspect_source_and_activity",
"skeptical_of_marketing",
"reward_falsifiable_concrete_claims",
"hardware_and_benchmark_literate"
],
"anti_patterns": [
"explicit_star_us_cta",
"star_for_star_rings",
"purchased_or_fake_stars",
"coordinated_synchronized_starring",
"superlative_laden_titles",
"empty_repo_or_no_license",
"all_marketing_no_code",
"demo_gif_as_hero"
],
"posting_rules": {
"method": "requires_real_repository",
"bot_risk": "low",
"rate_limit": "no platform limit; growth is HN/Reddit/Trending-driven, one credible launch per repo",
"warm_up": "seed first ~100 stars via direct outreach before public launch, then feed velocity via HN Show HN, awesome-list PRs, and Dev.to/Reddit cross-posts (star-history.com playbook, RESEARCH-CORPUS.md M6)"
},
"optimal_timing": {
"days": ["tuesday", "wednesday", "thursday"],
"hours_utc": [12, 13, 14, 15, 16, 17],
"notes": "This window governs the HN/link LAUNCH POST that drives GitHub, not GitHub itself (GitHub has no 'post time'). Posting the driving HN launch in the 12-17 UTC window is worth ~200 stars over the worst window (arXiv 2511.04453, 138 AI-repo launches; RESEARCH-CORPUS.md M1). Growth is a spike-then-decay curve, not sustained; cadence (Launch Weeks, milestone posts) converts spikes to slopes."
},
"growth_surfaces": {
"_note": "EXTENSION BLOCK — non-standard; no other platform profile carries this. The copy assets that drive stars, mapped to the rubric.",
"repo_description": "<=133 char median (corpus range 26-301; RESEARCH-CORPUS.md L-desc). The GitHub-search and social-card one-liner. Converting formulas: 'The open-source X alternative'; quantified-outcome stack ('60-90% fewer tokens. Single binary, zero deps'); 'X for Y' recast; category coinage + definite article. Agent/CLI compatibility roll-call rising (10/30, L-desc).",
"readme_first_screen": "Above-fold anatomy: logo/banner 14/17, one-line bolded value prop 17/17 (universal), motion-or-static-screenshot demo 10/17, badge cluster 15/17 (median ~5-6), nav row 7/17. NOT a demo GIF (0/17). RESEARCH-CORPUS.md L-readme.",
"launch_title": "The HN/Show HN or link-post title. Formula: '[Name] – one clear sentence'. Modest language only; superlatives correlate with flagging and violate HN guidelines (RESEARCH-CORPUS.md M4).",
"social_launch_post": "Loud-founder X post or a third-party demo clip; personality accounts outperform org accounts, and a <30s magic-moment clip is itself the distribution (RESEARCH-CORPUS.md C-pattern 3,5).",
"release_notes": "Milestone/Launch-Week cadence posts that re-trigger star velocity after the initial spike decays (RESEARCH-CORPUS.md C-pattern 6)."
},
"trending_algorithm": {
"_note": "EXTENSION BLOCK — non-standard. GitHub's Trending algorithm is unpublished; this is community analysis (RESEARCH-CORPUS.md M-trending).",
"basis": "star_velocity_relative_to_repo_baseline",
"window": "rolling (short; ~24-48h feed from an HN spike)",
"normalization": "language-normalized (10k stars in 2016 != 10k in 2025; per-language cohort)",
"note": "Community analysis (github.com/orgs/community/discussions/163970): Trending ranks acceleration off a repo's own baseline, not absolute totals — a small repo with a sharp HN-fed spike can outrank a large steady one. HN->Trending flywheel: HN score is the strongest launch-day predictor (arXiv 2511.04453), baseline stars second."
},
"breakout_triggers": {
"_note": "EXTENSION BLOCK — non-standard. Ranked by cross-case frequency (RESEARCH-CORPUS.md C-patterns). These are DISTRIBUTION mechanics, mostly OUTSIDE copy — the copy rubric only sets them up. The distribution playbook (distribution.md) is where these are worked.",
"ranked": ["wave_riding", "comparative_number_oneliner", "demo_as_copy", "hn_trending_flywheel", "loud_founder", "cadence"]
},
"readme_first_screen_norms": {
"_note": "EXTENSION BLOCK — non-standard. Measured frequencies, N=17 breakout READMEs, 2026-07-07 (RESEARCH-CORPUS.md L-readme).",
"one_line_value_prop": "17/17 universal",
"logo_or_banner_above_fold": "14/17 near-universal",
"badge_cluster_above_fold": "15/17 expected (median ~5-6)",
"motion_or_screenshot_demo_above_fold": "10/17 recommended (hosted MP4 or static hero, NOT GIF)",
"demo_gif_above_fold": "0/17 obsolete",
"nav_link_row_above_fold": "7/17 optional",
"comparison_or_why_not_x_section": "9/17 common",
"benchmark_table": "7/17 common",
"star_history_chart": "10/17 near-bottom (does the star-asking implicitly)",
"explicit_star_cta": "1/17 avoid",
"first_install_command_line": "median line 84.5 (range 27-309, n=16); only 6/16 within first 60 lines — do NOT over-penalize a deferred install"
}
}