Prevent repeated navigation from leaving the previous page visible beneath a new URL.
Fixed
- Keep page transitions running when repeated navigation requests arrive before the destination loads.
- Preserve normal page loading and recovery after a failed request.
- repo
- bookcicle/ui
Keeps Redline plan context through account creation and checkout, returns new subscribers to their Redline dashboard, and clarifies next steps on PDF and DOCX comparison pages.
Improved
- Shows the selected Creator or Creator Pro trial during Redline account creation.
- Displays Redline units, document formats, rate limits, and hosted viewer access at checkout instead of unrelated workspace and AI credit details.
- Returns successful Redline trials to the account dashboard and canceled checkouts to Redline pricing.
- Clarifies PDF Early Access availability and adds relevant plan or access actions to the PDF and DOCX comparison pages.
- Prefills known account names, removes redundant read-only email confirmation from Redline checkout, and simplifies trial allowance copy across marketing and account views.
- repo
- bookcicle/ui
Introduces dedicated edge rate limiting for unauthenticated Redline playground routes, isolates developer API keys from blanket IP throttling, and expands WAF body size thresholds for 1 MiB inline diffs.
Security
- Configured redline-anonymous-rate-limiter rule in bookcicle-global-waf to cap unauthenticated /v1/redline/* requests at 300 requests per 5-minute window per IP with a custom 429 JSON response.
- Exempted requests bearing Authorization or x-bookcicle-authorization headers to prevent corporate NAT and CI/CD false-positive throttling for developer API keys.
- Expanded bookcicle-size-limiter threshold to 1.2 MB (1,200,000 bytes) to accommodate standard 1 MiB inline HTML diff payloads without edge blockage.
Improved
- Enhanced Redline frontend playground error handling to specifically detect HTTP 429 status codes and inform users with actionable rate-limit notifications.
- repo
- bookcicle/ui
Restores authentic document typography and formatting hierarchy for HTML and Markdown outputs across playground rendered diffs, side-by-side split view panes, and hosted viewer surfaces.
Improved
- Preserved authentic heading styles (h1 through h6) in Redline comparison viewer and split panes, preventing resets from collapsing headers to body font sizes and weights.
- Restored bullet and numbered list styling, margins, and indentation for ul, ol, and li elements in diff results.
- Added scoped document typography rules for paragraphs, blockquotes, tables, horizontal rules, pre, and inline code across .rl-rendered-content, .rl-split-pane-body, and .rl-viewer-content.
- Ensured inline ins and del tags inherit heading font size and weight when nested within document headers.
- Added E2E assertions verifying authentic heading and list typography across rendered HTML and Markdown comparison modes.
- repo
- bookcicle/ui
Nests Developer Dashboard and API Keys inside Account settings, restores Bookcicle Account styling, aligns button palette with Redline brand tokens, lowers app bar loader to 68px, and completes full mobile responsiveness audit.
Added
- Moved Developer Dashboard and API Keys inside Account settings with RedlineDashboardView and RedlineApiKeysView components, redirecting /dashboard and /api-keys to /account#dashboard and /account#api-keys.
- Integrated Developer Dashboard and API Keys into SettingsView sidebar navigation when ENABLE_REDLINE is active.
- Created unit test suites covering RedlineDashboardView and RedlineApiKeysView behaviors.
Fixed
- Scoped destructive global CSS resets in style.css away from #appContent to restore Bookcicle Account layout and card spacing.
- Replaced universal resets in Redline stylesheet with zero-specificity :where(...) selectors and cleaned up header gradient pseudo-elements to restore homepage container widths, tab button padding, and header clarity.
- Scoped Account preferences strictly to Theme and decorative Animations for simplified account settings.
- Aligned brand action buttons to Redline red (#E51E2B light, #FF2B38 dark) and injected Redline surface tokens for dark mode.
- Positioned #progressBar loader at top: 68px to align flush beneath the 68px Redline app bar.
- Fixed mobile responsive issues across playground tabs, toolbar layout buttons, modal action buttons, and touch target sizing.
- Resolved route conflicts between Redline static shell routing and React /account hash tab routing.
- repo
- bookcicle/ui
- git Sha
- 367ce61d3306c35e69ad8cc5e096edf13760078d
Adds Redline to the Bookcicle brands hub and clarifies document comparison, temporary storage, and the company-wide no-model-training policy.
Added
- Added Redline to the Bookcicle Brands hub with a direct product link.
Clarified
- Updated Bookcicle terms and privacy coverage for Redline comparisons and hosted viewers.
- Replaced outdated model-training opt-out language with a company-wide no-model-training commitment.
- Corrected Redline legal links and clarified temporary comparison storage.
- repo
- bookcicle/ui
Fixes Manage Plan navigation and pricing links across Redline builds to route to the homepage pricing section, audits and repairs dead internal links from account views, and ensures seamless cross-view scroll restoration.
Fixed
- Updated Manage Plan and pricing links in Redline developer dashboard, usage analytics, account details, and billing overview to target /#pricing with client-side router interception.
- Audited internal links across header navigation, hero actions, documentation, and footer to use root-relative anchors (/#pricing, /#playground, /#docs), preventing dead /account#pricing routing when navigated from account subviews.
- Added router redirect and exact route recognition for /pricing and /account/plan to /#pricing in Redline product builds.
- Restored smooth scroll targeting to #pricing when unmounting React apps and returning to the Redline home shell.
- Ensured responsive embed and viewer modes properly activate view shells outside the default landing route.
- repo
- bookcicle/ui
- git Sha
- 329c4d77296c5ed0c9fe1597ed95409b60e3745e
Streamline Redline hero subtitle copy to concisely highlight production-ready redlines across HTML, Markdown, TXT, JSON, DOCX, and PDF formats without em dashes.
Improved
- Concise hero messaging highlighting multi-format redline generation across HTML, Markdown, TXT, JSON, DOCX, and PDF.
- repo
- bookcicle/ui
- git Sha
- 1d1e12194272aa3c86fffaad01543c0954761c9b
Introduce syntax highlighting and dual request/response inspection tabs with status badge in the Redline Get Code pane, remove redundant Features header link, and ensure all navigation routes land on functional surfaces.
Added
- Syntax highlighting tokenization for cURL, JavaScript, Python, HTTP response headers, and JSON/SSE response bodies in the Redline Get Code pane.
- Response inspection tab group in Get Code featuring HTTP Headers, Response Body, and a live HTTP 200 OK status indicator.
- Documentation guides for large file uploads, hosted viewer embeds, and API rate limits.
Fixed
- Removed redundant Features link from top navigation appbar.
- Mounted Redline application views directly into root main element, preventing global shell router from hiding surfaces on route navigation.
- repo
- bookcicle/ui
- git Sha
- f87a6fffe4286523b3bfe23b9275357464ed36f3
Wire up the heavy document comparison service (POST /v1/redline/documents) into the Redline web UI, adding Early Access PDF and Word DOCX upload tabs, real-time SSE progress handling, async Track Changes queuing notifications, and updated developer code snippets.
Added
- Interactive DOCX and PDF (Early Access) document upload dropzones in the Redline playground with client-side validation and file size guards.
- Authentic CareerGR-style document previewer rendering unified paper sheets with subtle borders, elevation drop shadows, standard US letter proportions, and bottom-right page numbering stamps.
- Pagination controls (Previous/Next page, page indicator, and Paged vs. Continuous view mode toggles) for long multi-page document comparisons.
- Real-time Server-Sent Events (SSE) streaming progress integration (validating, converting, comparing, content_complete, track_changes_queued) in the playground comparison runner.
- Asynchronous Microsoft Word Track Changes job queuing banner indicating background document generation for DOCX comparisons.
- Add SigV4 x-amz-content-sha256 payload hashing for document comparison stream requests across CloudFront Lambda OAC.
- Updated developer documentation and copyable cURL, JavaScript, and Python code snippets for POST /v1/redline/documents.
- repo
- bookcicle/ui
- git Sha
- 18f6fe0a218b81f9d9f08e2e9e725dd2a4ee212e
Introduces dedicated, friendly comparison landing lanes for PDF and Word DOCX documents, integrates a direct Compare footer navigation column, and adds returning user route memory.
Added
- Dedicated end-user PDF comparison lane (/pdf-compare) with friendly non-technical copy, visual page-by-page diff highlighting, and drag-and-drop document uploaders.
- Dedicated Word document comparison lane (/docx-compare) with native Microsoft Word Track Changes export status, clause review benefits, and format preservation.
- Curated Compare column in the Redline footer linking directly to /pdf-compare, /docx-compare, playground, and hosted viewer.
- Lightweight returning user memory storing visited comparison surfaces in localStorage with 14-day expiry and dismissible resume banner on the homepage.
Improved
- Refactored document streaming and upload logic into a reusable execution engine shared between the playground and dedicated comparison lanes.
- Expanded crawler SEO manifest and routing isolation configs to index end-user comparison routes.
- repo
- bookcicle/ui
Fixes Creator Pro tier quota and plan mapping in Redline services and UI, elevates 25,000 units allowance for active Pro subscribers, eliminates false trial callouts for paid members, and reactive live usage refresh.
Fixed
- Escaped DynamoDB reserved keyword 'plan' with expression attribute names in redline-service quota updates, restoring reliable unit consumption counters.
- Extended auth context in redline-service and redline-document-service to preserve membership_type and map Creator Pro subscribers to 25,000 comparison units.
- Resolved Creator Pro membership level and tier normalization in auth check utilities across underscores, hyphens, and spaces.
- Conditioned the trial entitlement callout in RedlineDashboardView and RedlineUsageView on active trial status, correctly identifying active paid Creator Pro subscriptions.
- Connected playground comparisons to live usage refresh and removed stale hardcoded counter initializers.
- Nested Redline Usage and Storage Usage links hierarchically under Usage with dedicated tree connecting borders and indentation in Account Settings.
- repo
- bookcicle/ui
- git Sha
- 0ca03864d0b4e2af46eb0a67f181225468075665
Resolve CORS preflight header compatibility for Redline comparison iframe viewers, support local development hostnames in API base resolution, and establish live end-to-end dev smoke coverage.
Improved
- Streamline iframe embed viewer Authorization headers to avoid custom CORS preflight rejection against CloudFront.
- Add 127.0.0.1 development hostname resolution to Redline client API base detection for local testing against dev services.
- Add live dev smoke E2E specification validating HMAC viewer token security (401/403/200), clean embed mode, and theme/CSS postMessage overrides.
- repo
- bookcicle/ui
- git Sha
- f08de87795a2dc2091d658a06de0c07755650899
Updates browser tab titles on Redline builds to display 'Redline' on root and '<Page> — Redline' across routes, replacing 'Bookcicle' in marketing, pre-rendering, manifests, and router transitions.
Fixed
- Updated Redline static HTML shells, Vite build config, and pre-render manifest to use 'Redline' rather than 'Redline by Bookcicle'.
- Configured marketing route titles (/playground, /docs, /dashboard, /api-keys, /billing) to suffix ' — Redline'.
- Added productBrowserTitle normalization for Redline vertical to replace 'Bookcicle' and 'Redline by Bookcicle' with 'Redline' in client-side router navigation.
- repo
- bookcicle/ui
- git Sha
- 21705cf32f85d00023f5d98c9bf50394e51456c6
Eliminates phantom newline indicators and ghost inline boxes when comparing Markdown lists and structured JSON lines by setting block-wrapping del and ins tags to display: contents and styling block targets directly.
Fixed
- Eliminated phantom newline boxes above list items (li) and JSON lines (div.json-line) by setting del and ins wrappers to display: contents when wrapping block elements.
- Applied deletion and insertion background, text-decoration line-through, and color styling directly to block children (li, div, p, blockquote) inside del and ins.
- Removed unnecessary inter-tag newlines between json-line elements in client-side diffing and formatJsonToSection.
- Preserved element class attributes in client-side HTML word diffing for structured document types.
- Added E2E assertions verifying that block-wrapping del/ins elements use display: contents and produce no ghost boxes.
- repo
- bookcicle/ui
Ties Redline UI with existing authentication, account view, live usage, and protected developer features. Adds RedlineUsageView to Account Settings with storage usage and billing parity while omitting identity and limits.
Added
- Integrated Redline with Bookcicle AccountApp and SettingsView, including Redline Usage, Storage Usage, Billing, Security, and Preferences while gating out Identity and Limits.
- Created live RedlineUsageView component querying /v1/redline/usage with visual progress bar, cycle reset tracking, and 14-day trial entitlement banner.
- Integrated live API key listing, creation, and revocation on Redline developer dashboard when authenticated.
- Added reactive auth state to Redline header navigation displaying Account and Sign out when authenticated and guest sign-in/trial CTAs when anonymous.
- Updated Redline marketing copy and CTAs for 14-day trial membership entitlement across hero, pricing tiers, and final callouts.
- Expanded Playwright cross-product and Redline marketing E2E test suites with coverage for guest login routing and live authenticated account navigation.
- repo
- bookcicle/ui
- git Sha
- 298807b7054f15d86ef83307ce459ca2a5e429bb
Exempts anonymous Redline playground endpoints from core API authentication redirects and ensures fetch abort signals propagate through retry wrappers to prevent network timeouts.
Improved
- Added Redline endpoints to NON_AUTH_SERVICES in the bootstrap fetch wrapper, ensuring unauthenticated playground traffic never triggers automatic re-login redirects.
- Propagated request abort signals to originalFetch within the exponential backoff retry handler to promptly cancel in-flight playground comparison requests upon controller timeout.
- Aligned playground response headers and body generation with anonymous Basic 100-unit quota limits and Creator Pro 25,000-unit allowances.
- repo
- bookcicle/ui
Upgrades redline insertion and deletion typography with WCAG AAA high-contrast colors across light and dark modes, prevents operating system dark-mode preference bleeding into light documents, and introduces a Used By customer showcase on the landing page highlighting Bookcicle and CareerGR.
Improved
- Upgraded Redline light-mode insertion text to deep forest green (#14532d) on soft green tint (rgba(34, 197, 94, 0.14)), providing WCAG AAA 8:1 contrast.
- Upgraded Redline light-mode deletion text to deep crimson (#991b1b) on soft red tint (rgba(239, 68, 68, 0.14)), providing 7.8:1 contrast.
- Scoped system dark theme media queries in redline.css so that OS-level dark mode preferences do not inject low-contrast neon green text into light-mode pages or documents.
- Added 'Used By Modern Publishing & Career Platforms' customer row to the Redline homepage featuring Bookcicle and CareerGR brand logos with dark/light mode asset switching and external links.
- repo
- bookcicle/ui
Introduce token-authenticated private iframe embeds for Redline comparisons with dark/light theming, transparent canvas mode, and host postMessage API customization.
New
- Private comparison iframe hosting with 24-hour HMAC token authentication and clean chrome-free embed mode.
- Theme query parameter support (theme=light|dark|system) and transparent background mode for seamless iframe embedding.
- Host application postMessage bridge supporting dynamic theme switching, layout toggling, and CSS variable styling.
Improved
- Clear unauthorized and 24-hour expiration error cards when accessing private comparisons without valid access tokens.
- repo
- bookcicle/ui
- git Sha
- 4013e7f119be9bdfd35a5fc31566863d04d80a13