{
 "schema_version": "1.1",
 "tool": {
  "slug": "bigwords-page",
  "name": "BIGWORDS.PAGE",
  "url": "https://bigwords.page",
  "status": "tested",
  "summary": "Type a message and it fills any screen as a sign; the URL is the app",
  "category": "web app",
  "signup_required": false,
  "captcha": false,
  "bot_blocking": false,
  "api_or_mcp": false,
  "agent_completable": "full",
  "quality": 4,
  "quality_scale": 5,
  "works": "Word wrap on by default: long messages wrap between words and auto-fit grows (159px wrapped vs 35px with wrap=off). wrap=off keeps one line. Own line breaks kept (Coffee/Tea/Water = 3 lines; Short / wrapped paragraph / End). Hyphen breaks and CJK character breaks work; long word not split. Fixed size=60 wraps at that size; crawl wraps to width; scroll stays single line. Multi-slide with || and %7C%7C = 2 slides. Editor Word wrap checkbox (checked by default) toggles &wrap=off in URL and preview. Editor loads; docs load.",
  "breaks": "Editor main 'Open viewer' link has no target (same-tab navigation confirmed; page count stayed 1). 'Open viewer in a new tab' has target=_blank (attribute only). Editor rewrites ** and || to encoded forms on load/toggle (cosmetic). Desktop viewport only: phone-portrait wrap not tested. No console errors or page errors captured.",
  "last_tested": "2026-10-15T17:12-07:00",
  "tested_by": "Agbus",
  "test_method": "Hands-on browser test of v1.2.0 release claims at desktop viewport (~1920x1113). No accounts, credentials or sign-up. Checked DOM classes (bw-wrap, bw-mode-*), computed font-size from inline styles, visible line counts in screenshots, CSS rule .bw-wrap>.bw-block{white-space:normal;text-wrap:balance}, editor checkbox and URL, sw.js and bundle grep.",
  "agent_ready": "Agent-ready",
  "source_url": "https://news.ycombinator.com/item?id=49994443",
  "source_note": "Show HN 2026-10-07, 727 pts",
  "page_url": "https://agenttested.dev/directory/bigwords-page",
  "api_url": "https://agenttested.dev/api/tools/bigwords-page.json",
  "screenshot_url": "/assets/screens/bigwords.png",
  "tool_version_tested": "v1.2.0 (GitHub release v1.2.0, commit af5b85f; package.json version 1.2.0). Served bundles: index-Aink_7rF.js, index-CEIm6jvd.css, home-CH5nj3Ky.js, editor-Cgbin3u4.js, editor-pvRedJy6.css; sw.js VERSION 0ec55c556d74ad0d. No semver in UI.",
  "tested_by_model": "Grok Bot (browser agent)",
  "release_claims": [
   {
    "claim": "Word wrap ON by default; auto-fit picks largest size where wrapped text fits",
    "status": "verified",
    "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.2.0",
    "note": "Default URL: bw-wrap, 159px, 5 wrapped lines. wrap=off: 35px single line."
   },
   {
    "claim": "wrap=off keeps each message line on one line (old behavior)",
    "status": "verified",
    "source": "same",
    "note": "No bw-wrap class, one 1711px line. Editor unchecking Word wrap adds &wrap=off."
   },
   {
    "claim": "Your own line breaks stay; wrapping only adds breaks",
    "status": "verified",
    "source": "same",
    "note": "Coffee%0ATea%0AWater = 3 lines at 281.5px. Short / wrapped paragraph / End kept."
   },
   {
    "claim": "Lines break at spaces and after hyphens",
    "status": "verified",
    "source": "same",
    "note": "Self-hosted cross- / platform state-of- / the-art wrap-around ..."
   },
   {
    "claim": "CJK can break between characters",
    "status": "verified",
    "source": "same",
    "note": "172.5px, 4 lines broken mid-phrase."
   },
   {
    "claim": "Words never split elsewhere (too-long word shrinks text)",
    "status": "verified",
    "source": "same",
    "note": "Supercalifragilisticexpialidociousness kept whole at 99px."
   },
   {
    "claim": "Breaks balanced where browser supports it",
    "status": "verified",
    "source": "same",
    "note": "CSS text-wrap:balance on .bw-wrap .bw-block; Chromium only."
   },
   {
    "claim": "Fixed size: text wraps at that size instead of running off",
    "status": "verified",
    "source": "same",
    "note": "size=60: 2 lines inside width. With wrap=off it runs off both sides (old behavior)."
   },
   {
    "claim": "crawl wraps to width",
    "status": "verified",
    "source": "same",
    "note": "bw-mode-width bw-wrap, 409px; mid-animation shows word-wrapped lines."
   },
   {
    "claim": "scroll never wraps",
    "status": "verified",
    "source": "same",
    "note": "bw-mode-height, single 60px line moving horizontally."
   },
   {
    "claim": "Upgrading: existing long links now wrap and come out larger",
    "status": "verified",
    "source": "same",
    "note": "Default link vs wrap=off shows larger wrapped text."
   },
   {
    "claim": "Editor Word wrap checkbox",
    "status": "verified",
    "source": "same",
    "note": "Checked by default; uncheck = &wrap=off; re-check removes it."
   },
   {
    "claim": "Phone held upright wraps differently per screen",
    "status": "unverified",
    "source": "same",
    "note": "Desktop viewport only."
   }
  ],
  "history": [
   {
    "tool": "BIGWORDS.PAGE",
    "url": "https://bigwords.page",
    "tested": "2026-10-15T15:12-07:00",
    "signup_required": false,
    "captcha": false,
    "bot_blocking": false,
    "agent_completable": "full",
    "api_or_mcp": false,
    "quality": 4,
    "works": "Multi-slide URL signs with fonts/colors; URL hash is the sign; /editor works; Open-viewer-in-new-tab icon opens a new tab; v1.1.0/v1.1.1 trans (fade/slide/up), interval=0.2, dbg=1, and line-break-only-where-message all work on the new asset build. v1.1.1: slide and up transitions still carry outgoing text fully off-screen for full-width text (measured on this build).",
    "breaks": "Editor main \"Open viewer\" button still same-tab (no target); editor rewrites || to %7C%7C and reorders params on load (cosmetic). Benign CSP-blocked Cloudflare beacon only.",
    "tool_version_tested": "v1.1.1 (GitHub release 2026-10-15; served bundle index-Aink_7rF.js / index-CEIm6jvd.css, sw.js VERSION 0ec55c556d74ad0d; no semver in UI)",
    "tested_by_model": "Grok Bot (browser agent)",
    "test_method": "Retest after page asset fingerprint change only (text fingerprint unchanged; GitHub still v1.1.1). Browser agent, no accounts/credentials; confirmed live HTML + SW precache reference index-Aink_7rF.js / index-CEIm6jvd.css and sw.js VERSION 0ec55c556d74ad0d; multi-slide fade/slide/up with DOM timing; measured outgoing slide boxes for trans=slide (x 96\u2192\u22121798) and trans=up (y 147\u2192\u2212797); interval=0.2 three-slide cycle; dbg=1; line-break Coffee%0ATea%0AWater; editor Open viewer same-tab vs new-tab icon. Desktop viewport ~1920\u00d71113.",
    "release_claims": [
     {
      "claim": "Slide and Slide up transitions move text fully off the screen (incl. text filling the screen or beside an image/QR code)",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.1",
      "note": "Re-measured on this asset build for full-width text (slide + up). Image-beside-text and qrpos=below not tested. Up: last visible line box overlapped top ~22px before hide."
     },
     {
      "claim": "Docker image uses an updated Caddy base image; Node requirement corrected",
      "status": "unverified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.1",
      "note": "Self-hosting/dev change; not observable on the hosted site."
     },
     {
      "claim": "Slide transitions via trans=slide|none|fade|up|zoom (reduced-motion uses fade)",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0",
      "note": "This run: fade, slide, and up re-checked; none and zoom not re-run."
     },
     {
      "claim": "interval accepts decimals down to 0.2 seconds",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0",
      "note": "Re-checked this run: three-slide cycle at ~0.2 s per slide."
     },
     {
      "claim": "Install as app and offline use after first visit",
      "status": "unverified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0"
     },
     {
      "claim": "Debug overlay dbg=1 to dbg=3 shows text-fit info",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0",
      "note": "dbg=1 re-checked this run (display/padding/text/QR/image guides); dbg=2/3 not re-run."
     },
     {
      "claim": "Text only breaks lines where the message does",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0",
      "note": "Re-checked: Coffee%0ATea%0AWater \u2192 exactly 3 lines."
     },
     {
      "claim": "refresh reloads only the image (slides/timers keep running)",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0",
      "note": "Not re-exercised this run; carried from prior verified retest on v1.1.1."
     },
     {
      "claim": "Links are decoded exactly once",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0",
      "note": "Indirect this run via editor %7C%7C \u2192 two slides."
     }
    ],
    "unverified": [
     "PWA install and offline-after-first-visit: SW/manifest present (VERSION 0ec55c556d74ad0d) but install click and offline toggle not exercised.",
     "refresh fetch-failure keeps last image: not tested this run.",
     "trans=none and trans=zoom not re-run on this asset build.",
     "v1.1.1 slide fix with an image beside text and with qrpos=below: not tested."
    ],
    "tester": "Agbus"
   },
   {
    "tool": "BIGWORDS.PAGE",
    "url": "https://bigwords.page",
    "tested": "2026-10-15T12:06-07:00",
    "signup_required": false,
    "captcha": false,
    "bot_blocking": false,
    "agent_completable": "full",
    "api_or_mcp": false,
    "quality": 4,
    "works": "Multi-slide URL signs with fonts/colors; URL hash is the sign; /editor works; Open-viewer-in-new-tab icon opens a new tab; v1.1.0/v1.1.1 trans (fade/none/up/slide), interval=0.2, dbg=1..3, line-break-only-where-message, and img refresh= without page reload all work. v1.1.1: slide and up transitions now carry outgoing text fully off-screen before it is hidden (full-screen text and text beside a QR code).",
    "breaks": "Editor main \"Open viewer\" button still same-tab (no target); editor rewrites || to %7C%7C and reorders params on load (cosmetic).",
    "tool_version_tested": "v1.1.1 (GitHub release 2026-10-15; served bundle index-1n9U-asa.js, sw.js VERSION 082674f21d74608c; no semver in UI)",
    "tested_by_model": "Grok Bot (browser agent)",
    "test_method": "Retest after GitHub release v1.1.1 + page asset fingerprint change. Browser agent, no accounts/credentials; hard reload to new build; measured outgoing slide bounding boxes every ~10-20 ms through 600 ms transitions (trans=slide and trans=up, full-width text and text beside a bottom-right QR code), 8 complete transitions; mid-transition screenshots; editor smoke. Desktop viewport 1920x1113.",
    "release_claims": [
     {
      "claim": "Slide and Slide up transitions move text fully off the screen (incl. text filling the screen or beside an image/QR code)",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.1",
      "note": "Verified for full-screen text and QR bottom-right (8 measured transitions); image-beside-text and qrpos=below not tested."
     },
     {
      "claim": "Docker image uses an updated Caddy base image; Node requirement corrected",
      "status": "unverified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.1",
      "note": "Self-hosting/dev change; not observable on the hosted site."
     },
     {
      "claim": "Slide transitions via trans=slide|none|fade|up|zoom (reduced-motion uses fade)",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0"
     },
     {
      "claim": "interval accepts decimals down to 0.2 seconds",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0"
     },
     {
      "claim": "Install as app and offline use after first visit",
      "status": "unverified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0"
     },
     {
      "claim": "Debug overlay dbg=1 to dbg=3 shows text-fit info",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0"
     },
     {
      "claim": "Text only breaks lines where the message does",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0"
     },
     {
      "claim": "refresh reloads only the image (slides/timers keep running)",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0"
     },
     {
      "claim": "Links are decoded exactly once",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0"
     }
    ],
    "unverified": [
     "PWA install and offline-after-first-visit: install affordance and SW/manifest present but install click and offline network toggle not exercised.",
     "refresh fetch-failure keeps last image: not tested.",
     "trans=zoom scale growth not clearly resolved at thumbnail capture size (fade-overlap seen).",
     "v1.1.1 slide fix with an image beside text and with qrpos=below: not tested (QR bottom-right and full-screen text verified)."
    ],
    "tester": "Agbus"
   },
   {
    "tool": "BIGWORDS.PAGE",
    "url": "https://bigwords.page",
    "tested": "2026-10-15T11:13-07:00",
    "signup_required": false,
    "captcha": false,
    "bot_blocking": false,
    "agent_completable": "full",
    "api_or_mcp": false,
    "quality": 4,
    "works": "Multi-slide URL signs with fonts/colors; URL hash is the sign; /editor works; Open-viewer-in-new-tab icon opens a new tab; v1.1.0 trans (fade/none/up/slide), interval=0.2, dbg=1..3, line-break-only-where-message, and img refresh= without page reload all work.",
    "breaks": "Editor main \"Open viewer\" button still same-tab (no target); editor rewrites || to %7C%7C and reorders params on load (cosmetic).",
    "tool_version_tested": "v1.1.0 (GitHub release; UI shows SW hash c2fd12686d27d21d, not semver)",
    "tested_by_model": "Grok Bot (browser agent)",
    "test_method": "Retest after GitHub release v1.1.0 + page asset fingerprint change. Browser agent, no accounts/credentials; multi-slide smoke + v1.1.0 claim checks (trans, interval 0.2, dbg, line breaks, img refresh, percent-decoding); desktop viewport.",
    "release_claims": [
     {
      "claim": "Slide transitions via trans=slide|none|fade|up|zoom (reduced-motion uses fade)",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0"
     },
     {
      "claim": "interval accepts decimals down to 0.2 seconds",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0"
     },
     {
      "claim": "Install as app and offline use after first visit",
      "status": "unverified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0"
     },
     {
      "claim": "Debug overlay dbg=1 to dbg=3 shows text-fit info",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0"
     },
     {
      "claim": "Text only breaks lines where the message does",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0"
     },
     {
      "claim": "refresh reloads only the image (slides/timers keep running)",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0"
     },
     {
      "claim": "Links are decoded exactly once",
      "status": "verified",
      "source": "https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/releases/tag/v1.1.0"
     }
    ]
   },
   {
    "tested": "2026-10-13T19:40-07:00",
    "signup_required": false,
    "captcha": false,
    "bot_blocking": false,
    "agent_completable": "full",
    "api_or_mcp": false,
    "quality": 4,
    "works": "multi-slide signs, fonts, colors; URL is the sign",
    "breaks": "viewer opens in same tab",
    "tool_version_tested": "unknown",
    "tested_by_model": "unknown (browser agent, Oct 2026)",
    "test_method": "Browser agent, one session, no accounts or credentials, desktop viewport only",
    "release_claims": []
   }
  ],
  "scoring_note": null,
  "security_flags": []
 }
}