LearnNewsExamplesServices
Frontmatter
id9123
titleEnhance Stream Proxy with Adaptive Chunking for Faster TTFC
stateClosed
labels
enhancementaiperformancecore
assigneestobiu
createdAtFeb 12, 2026, 10:40 PM
updatedAtFeb 12, 2026, 11:07 PM
githubUrlhttps://github.com/neomjs/neo/issues/9123
authortobiu
commentsCount0
parentIssuenull
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtFeb 12, 2026, 11:07 PM

Enhance Stream Proxy with Adaptive Chunking for Faster TTFC

Closed v12.0.0 enhancementaiperformancecore
tobiu
tobiu commented on Feb 12, 2026, 10:40 PM

We are missing a point here: the vdom engine gets close to no work after the first 100 items. It needs to update the aria total row count, and the scrollbar height. Pretty much it.

To optimize the Time To First Content (TTFC), we should implement an "Adaptive Chunking" strategy in the Stream Proxy.

Proposal: Add initialChunkSize and initialBurstCount configs to Neo.data.proxy.Stream.

  • initialChunkSize: Allows a smaller chunk size (e.g., 100) for the first few batches to render the visible viewport immediately.
  • initialBurstCount: Defines how many of these small chunks to send before switching to the larger chunkSize (e.g., 500) for efficient background loading.

Implementation Plan:

  1. src/data/proxy/Stream.mjs: Implement the adaptive logic in the read method.
  2. apps/devindex/store/Contributors.mjs: Update the store configuration to use initialChunkSize: 100 and initialBurstCount: 5.

This ensures the first paint happens ~5x faster (100 items vs 500), while maintaining high throughput for the remaining 50k+ records.

tobiu added the enhancement label on Feb 12, 2026, 10:40 PM
tobiu added the ai label on Feb 12, 2026, 10:40 PM
tobiu added the performance label on Feb 12, 2026, 10:40 PM
tobiu added the core label on Feb 12, 2026, 10:40 PM
tobiu referenced in commit 73003b1 - "feat: Enhance Stream Proxy with Adaptive Chunking (100x5) (#9123)" on Feb 12, 2026, 10:56 PM
tobiu assigned to @tobiu on Feb 12, 2026, 11:06 PM
tobiu closed this issue on Feb 12, 2026, 11:07 PM