Skip to content

[icebox] perf: gzip/brotli response compression + surgical body/bodyHtml split #401

Description

@obrien-k

Part of the BBCode parity work (#398). Icebox — candidate wontfix, good first issue.

Context

Surfaced while sizing the additive bodyHtml field (#398). Two findings:

  1. No response compression middleware exists — all API responses ship uncompressed. BBCode/HTML/JSON is highly compressible (~80% off with gzip/brotli).
  2. Returning both body (raw) + bodyHtml (rendered) on every read roughly doubles BBCode payloads.

Measured impact is negligible on cable/4G in every scenario, a few seconds only on dialup big threads (uncompressed). Given the expected audience (few mobile, ~no dialup), this is not worth doing now.

If someone picks it up (cheap wins)

  1. Add compression middleware in app.ts (the big lever — helps every endpoint).
  2. Surgical split: view/list responses return bodyHtml only; the editor fetches raw body on demand. Halves per-item cost on high-fan-out read paths.

May be marked wontfix if the audience assumption holds. Linked to icebox register #301.

Metadata

Metadata

Assignees

No one assigned

    Labels

    BBCodeBBCode parser parity — phased implementation (see #398)good first issueGood for newcomersneeds-triageMaintainer needs to evaluate this issue

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions