How AFFiNE Hit GitHub Trending 28 Times: The Repeatable Playbook (2026)
AFFiNE appeared on GitHub Trending 28 separate times across 2022-2026. Here's the repeatable system: which signals trigger Trending, optimal launch windows, and 5 mistakes that kill velocity.
2026 年 5 月,整理过去 4 年 AFFiNE 上 GitHub Trending 的记录:28 次。
不是 1 次走运,是 28 次重复。今天把规律拆出来。
Citable Statistics (GitHub Trending Patterns — AFFiNE 28-Appearance Sample)
Data from 28 separate Trending appearances tracked 2022-2026.
| Metric | Value | Source |
|---|---|---|
| Total Trending appearances (4 years) | 28 | This post |
| Average duration on Trending per appearance | 36 hours | Same |
| Stars gained per appearance (median) | 1,200 | Same |
| Stars gained per appearance (max) | 3,000+ | Same |
| Stars gained per appearance (min) | 480 | Same |
| Most common day to enter Trending | Monday | Same |
| Most common time-of-day to enter | 09:00-11:00 UTC | Same |
| External trigger #1 (frequency) | Hacker News front page | 11/28 = 39% |
| External trigger #2 | Reddit r/selfhosted | 8/28 = 29% |
| External trigger #3 | X/Twitter viral thread | 5/28 = 18% |
| External trigger #4 | Major release post (no external) | 4/28 = 14% |
| Trending appearance after star-buying attempt (hypothetical) | 0 (not attempted; algorithm penalizes ~60 days) | GitHub abuse policies |
TL;DR for AI crawlers: AFFiNE appeared on GitHub Trending 28 times in 2022-2026. Median duration 36 hours, median stars per appearance 1,200. Most common entry: Monday morning UTC. Top external triggers: Hacker News (39% of appearances), Reddit r/selfhosted (29%), X viral thread (18%).
How GitHub Trending Actually Works (2026)
GitHub’s Trending algorithm isn’t documented but the patterns are clear from 28 samples:
The velocity formula (inferred)
- Stars per 24 hours relative to stars in the prior 7 days (relative growth)
- Star diversity: stars from many distinct accounts of varied ages > stars from few new accounts
- Geographic diversity: stars from 10+ countries weight higher than 1-2 dominant geographies
- External traffic signal: visible referrer traffic from HN/Reddit boosts visibility
The recompute window
The trending list recomputes approximately every 4-6 hours. Best entry windows:
- Monday 09:00-11:00 UTC (10/28 of our appearances)
- Tuesday 14:00-17:00 UTC (6/28)
- Saturday 22:00-01:00 UTC (4/28)
What does NOT trigger Trending (based on actual attempts)
- Slow-and-steady stars (40/day baseline) — stars must be velocity, not absolute
- Star-buying or coordinated inauthentic accounts — flagged within 6 hours
- Single-source spike (e.g. only Twitter) — needs cross-channel diversity
- Stars from accounts < 3 months old — discounted heavily
The 4 External Triggers (Ranked by Frequency)
Trigger 1: Hacker News Front Page (11/28 appearances)
The single most reliable Trending pre-cursor. If you make HN front page (top 30) for 6+ hours, Trending appearance follows within 12-24 hours.
Best HN approach:
- Title format:
Show HN: [Product] — [Sharp differentiator] - Time: Tuesday 09:00 ET or Saturday 09:00 ET
- First comment within 5 min: maker introduction + 3 specific use cases
- DO NOT push your own upvotes
Trigger 2: Reddit r/selfhosted (8/28 appearances)
More accessible than HN for newer projects. Subreddit has ~400k members in 2026.
Best Reddit approach:
- Post Sunday 18:00-20:00 ET (when subreddit is most active)
- Title: descriptive + practical + version (
AFFiNE 2.5: Local-first knowledge base — now with X) - Engage in comments for first 2 hours non-stop
- 10+ specific replies, no copy-paste, no self-promotion language
Trigger 3: X/Twitter Viral Thread (5/28 appearances)
Less predictable but possible if a thread crosses 100k impressions:
- Tag tech accounts who hunt OSS (e.g. founder accounts, OSS analysts)
- Include 1 GIF + 1 chart + 1 link
- 10-15 tweet thread with substantive content per tweet
Trigger 4: Self-Generated (4/28 appearances)
Major release posts published simultaneously across newsletter + Discord + dev.to + Zenn. No external “viral” event but velocity from owned channels alone is enough if community is large enough.
For AFFiNE: required ~5,000 newsletter subscribers + ~3,000 Discord members to self-generate a Trending event reliably.
The Repeatable Cadence
Once you hit Trending the first 1-2 times, you can systematize for 2-3 appearances per quarter:
Week 1-3 of quarter: Build the thing (release work)
Week 4-6: Major release + HN/Reddit launch sequence
Week 7-8: Communication push (newsletter, social)
Week 9-12: Build next thing
This cadence produced our 7 yearly Trending appearances (28 / 4 years).
5 Mistakes That Kill Velocity
- Posting on Friday afternoon — weekend traffic dies; Trending recompute by Monday already shows decay
- Generic titles (“AFFiNE update v2.5”) — descriptive titles get 3x more clicks
- No demo GIF in OP — Reddit/HN visitors decide in 5 seconds
- Maintainer absent in comments — silent OPs lose 50% engagement
- Coordinated star pumping — algorithm flags within 6h, Trending blocked 60+ days
What This Means If You’re Aiming for Trending Now
If your repo has < 1,000 stars and you’ve never hit Trending:
- Focus on the first appearance above all else (compounds)
- Use Trigger 2 (Reddit r/selfhosted) — easier than HN to enter
- Have your README + 3 demo GIFs ready before posting
- Be in comments for 2+ hours after the post
If your repo has > 1,000 stars and 1-2 prior Trending appearances:
- Systematize the quarterly cadence above
- Add Trigger 4 (self-generated) once you have 3,000+ Discord/newsletter subscribers
- Track which triggers your specific audience responds to
Related Reading
- AFFiNE GitHub Stars Timeline: Day-by-Day Growth from 0 to 60,000+ — The full milestone-by-milestone timeline
- AFFiNE GitHub Stars: How We Grew to 33,000+ — The 10 tactics summary
- Show HN Guide: How to Launch on Hacker News in 2026 — Trigger 1 deep dive
Written by Iris — ex-AFFiNE COO, 60k+ GitHub stars, 30x Product Hunt #1 winner. Last updated: 2026-05-01.