Ionosphere.tv
3
fork

Configure Feed

Select the types of activity you want to include in your feed.

feat: reorder discussion sections — top 30 posts first, then curated content

In "All" view: Top Posts (30) → Recaps & Blog Posts → Photos →
Videos & VOD Sites → More Posts (remaining). Ensures curated
content is visible without scrolling past 200 posts.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

+13 -1
+13 -1
apps/ionosphere/src/app/discussion/DiscussionContent.tsx
··· 171 171 { key: "Recaps & Blog Posts", label: "R" }, 172 172 { key: "Photos", label: "P" }, 173 173 { key: "Videos & VOD Sites", label: "V" }, 174 + { key: "More Posts", label: "+" }, 174 175 ], 175 176 posts: [{ key: "Top Posts", label: "T" }], 176 177 blogs: [{ key: "Recaps & Blog Posts", label: "R" }], ··· 234 235 // Stats card at the beginning 235 236 items.push({ type: "stats", stats: data.stats }); 236 237 238 + const TOP_POSTS_COUNT = 30; 239 + 237 240 if (filter === "all" || filter === "posts") { 238 241 if (data.posts.length > 0) { 239 242 items.push({ type: "heading", label: "Top Posts" }); 240 - for (const post of data.posts) { 243 + const topSlice = filter === "all" ? data.posts.slice(0, TOP_POSTS_COUNT) : data.posts; 244 + for (const post of topSlice) { 241 245 items.push({ type: "item", item: post }); 242 246 } 243 247 } ··· 270 274 } 271 275 if (data.vodSites.length > 0) { 272 276 items.push({ type: "vodDirectory", sites: data.vodSites }); 277 + } 278 + } 279 + 280 + // Remaining posts (after the top slice) in "all" view 281 + if (filter === "all" && data.posts.length > TOP_POSTS_COUNT) { 282 + items.push({ type: "heading", label: "More Posts" }); 283 + for (const post of data.posts.slice(TOP_POSTS_COUNT)) { 284 + items.push({ type: "item", item: post }); 273 285 } 274 286 } 275 287