Skip to content

Field report: bwserve discoverability gaps and API feedback#79

Open
deftio wants to merge 3 commits into
mainfrom
feedback/boilerroom-field-report
Open

Field report: bwserve discoverability gaps and API feedback#79
deftio wants to merge 3 commits into
mainfrom
feedback/boilerroom-field-report

Conversation

@deftio
Copy link
Copy Markdown
Owner

@deftio deftio commented May 12, 2026

Summary

Field report from building Boilerroom (~5,500 LOC, 5 tabs, 31 AI panelists, 3 backends, 12 DB tables) on bitwrench/bwserve over ~3 days.

Key finding: Bitwrench is more capable than it appears. The main issue is discoverability — a competent developer built a full app without finding client.mount(), wrote 3,019 lines of CSS instead of using JS-first styling with function-valued TACO attributes, hand-coded Enter key handlers that bwclient.js already provides, and never found bw.loadStyles().

What this report covers

  • What works well (TACO, SSE, data-bw-action, component model, BCCL — no changes needed)
  • The discoverability problem — 7 specific capabilities that were missed during development, with concrete recommendations for documentation
  • 4 genuine API gaps:
    1. bw._bwClient.sendAction() should be bw.sendAction() — the underscore prefix discourages using the primary client→server path
    2. Multi-field form collection — data-bw-action only resolves one inputValue
    3. No modal/dialog primitive — every app writes the same overlay boilerplate
    4. client.register() string bodies — no syntax highlighting or linting for utility functions
  • JS-first styling insight — TACO's a.style as JS strings + function-valued attributes (hydration-time and creation-time via IIFE) already solve style composition. This should be documented as the primary styling approach.
  • LLM-driven development feedbackclient.inspect() works, client.screenshot() needs html2canvas bundled

Recommended action

One opinionated guide ("How to build a bwserve app") that leads with the right patterns would prevent most of the friction documented here. The framework is ready; the on-ramp needs work.

File

  • dev/boilerroom-field-report.md — Full report with code examples and recommendations

🤖 Generated with Claude Code

deftio and others added 3 commits May 11, 2026 20:59
… feedback

Field report from building a ~5,500 LOC production app on bitwrench/bwserve.
Covers what works well, the documentation/discoverability gap (the main issue),
4 genuine API gaps (sendAction naming, multi-field forms, modal primitive,
register string bodies), JS-first styling insights, and LLM-driven development
feedback.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…roken

html2canvas is vendored and served. The issue was the allowScreenshot: true
server option defaulting to false. Another discoverability problem, not a
missing feature. Updated LLM development loop section accordingly.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
After reviewing "Thinking in Bitwrench" guide in detail: Sections 1-6, 8-10
cover mental model, JS-first styling, bw.s(), function-valued attrs, component
levels, and composition patterns well. The gap is Section 7 (bwserve) which
shows 8 of ~13 BwServeClient methods and misses mount, message, inspect,
screenshot, sendAction. Revised executive summary and discoverability section
to give credit where due and focus feedback on bwserve docs specifically.

Also noted bitwrench runs in three modes (pure client, shim/loader, bwserve)
and this report covers bwserve mode only.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant