Commit Graph

81 Commits

Author SHA1 Message Date
Maximilian Roos ad0c6ebeb8 fix(docs): prevent code block layout jump on page load (#622)
Move code block wrapper creation from deferred JavaScript to a synchronous
inline script at the end of <body>. This ensures the DOM structure is
finalized before the browser's first paint, eliminating the visible "jump"
when code blocks were wrapped after initial render.

Split into two phases:
1. Inline sync script wraps <pre> in .code-block-wrapper before first paint
2. Deferred code-copy.js adds copy buttons to existing wrappers

Co-authored-by: Claude <noreply@anthropic.com>
2026-01-14 01:50:17 -08:00
Maximilian Roos bf575aaaee Redesign social cards with horizontal layout (#522)
* Redesign social cards with horizontal layout

- New horizontal layout: logo left, text right
- Warm radial glow emanating from logo
- Refined typography: 88px title with tight tracking, 28px tagline
- Darker title color (#1a1817) for better hierarchy
- Move generated PNGs to assets repo (same pattern as demos)
- Add build script with automatic font downloading

Co-Authored-By: Claude <noreply@anthropic.com>

* Fix deploy workflow to include social cards

The assets repo now has both demos/ and social/ directories.

Co-Authored-By: Claude <noreply@anthropic.com>

* Simplify assets structure: single path copy

Restructured worktrunk-assets repo to have all content under assets/
so deploy workflow can use a single `cp -r` command.

Co-Authored-By: Claude <noreply@anthropic.com>

* Address review feedback

- Fix typo: "ONGs" → "PNGs"
- Fix stale comment: "Google Fonts" → "GitHub releases"
- Add -f flag to curl for better error handling
- Document purpose of each social card size

Co-Authored-By: Claude <noreply@anthropic.com>

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Fix asset URL in README for restructured repo

The worktrunk-assets repo was restructured from demos/ to assets/.
Update the URL transform in readme_sync.rs to match.

Co-Authored-By: Claude <noreply@anthropic.com>

* Fix README demo links after assets repo restructure

- Update wt-core.gif URL from demos/ to assets/ path
- Add PNGs exception to typos config (was incorrectly flagged)

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2026-01-10 17:55:35 -08:00
Maximilian Roos ace16de0e8 Remove wildcard prefix matching from search
Remove the manual wildcard suffix addition and rely on the expand
option for prefix matching instead.
2026-01-08 12:22:44 -08:00
Maximilian Roos 7dea514ec4 feat(search): enable wildcard prefix matching for search terms
Add wildcard suffix to search terms and enable expand option in elasticlunr
to support prefix matching. This allows partial term matches (e.g., "switc"
will match "switch").
2026-01-08 12:08:11 -08:00
Maximilian Roos 66fe9b0ddd Simplify Twitter thread demo with published metadata
Remove structural comments and planning notes, add publication date
and URL. Clean up monospace formatting and condense explanatory text.
2026-01-05 17:38:54 -08:00
Maximilian Roos ba959adbfa Refactor bash detection in code-copy.js
Check data-lang attribute and code content instead of relying on
stripped language classes. Update comment to reflect current detection
logic for bash/shell code blocks.
2026-01-05 16:14:42 -08:00
Maximilian Roos aab859cef4 docs: fix copy button position during horizontal scroll (#415)
Wrap code blocks in a container div so the copy button stays fixed at
the top-right corner when scrolling horizontally. Previously the button
would scroll with the code content.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude <noreply@anthropic.com>
2026-01-04 12:19:52 -08:00
Maximilian Roos e0c41ca8e4 Reorganize demo assets into mode/theme subdirectories
Restructure demo asset output to use mode (docs/social) and theme (light/dark)
subdirectories. Updates all asset references in documentation, build scripts,
and publish tooling to match the new layout:

- docs/light/ and docs/dark/ for documentation site demos (1600x900)
- social/light/ for social media demos (1200x700)

Simplifies asset management and allows docs/social builds to coexist without
overwriting each other. Updates build script to organize GIFs by theme after
recording, fetch-assets to preserve directory structure, and all markdown
references to use the new paths. Renames twitter build target to social for
broader applicability.
2025-12-30 22:00:22 -08:00
Maximilian Roos 98ce5fbd27 Refactor 1Password extension workaround and update code copy detection 2025-12-30 15:46:10 -08:00
Maximilian Roos cb91802689 Add omnibus demo to docs and fix shell-init race condition
Add wt-zellij-omnibus demo to docs build target and update demo
documentation. Fix race condition in background worktree removal by
adding delay before directory deletion to prevent "shell-init: error
retrieving current directory" when shell attempts to read cwd after
process exit. Update Fish shell configuration to disable cursor
blinking for cleaner demo recordings.
2025-12-30 11:17:42 -08:00
Maximilian Roos 525a7a559d Format code examples with Unicode monospace in Twitter thread
Apply Unicode monospace formatting to all command examples and CLI
snippets in the Twitter thread demo to improve readability in tweets
where traditional code formatting is unavailable.
2025-12-29 20:25:44 -08:00
Maximilian Roos 3edae82cfa Update Twitter thread demo step 13 with expanded description
Expand the character count and description for step 13 to better
explain the full lifecycle workflow across parallel Claude Code agents
in Zellij tabs, including the complete sequence of wt commands.
2025-12-29 15:51:50 -08:00
Maximilian Roos 01c036f7bb Update Twitter thread with dev server demo and resequence tweets 2025-12-29 14:56:15 -08:00
Maximilian Roos 1645e3b24c Refactor Twitter thread structure with omnibus demo
Add omnibus Zellij demo showcasing parallel Claude Code agents workflow.
Move demo from tweet 1 hook position to tweet 13 before CTA for better
pacing. Renumber subsequent tweets accordingly and update design decision
notes to reflect final structure.
2025-12-29 14:08:46 -08:00
Maximilian Roos 2937448979 Consolidate demo docs and add comprehensive demo tapes
Move demo development guidelines from docs/CLAUDE.md to dedicated docs/demos/CLAUDE.md, covering vhs-keystrokes setup, timing guidelines, and environment debugging.

Add complete VHS tape collection for Twitter and docs demos:
- Single-command demos: wt-switch, wt-statusline, wt-list, wt-list-remove, wt-hooks, wt-commit, wt-merge, wt-select-short
- Multi-pane Zellij demos: wt-zellij (parallel Claude instances), wt-zellij-omnibus (comprehensive feature showcase)

Restore Twitter launch thread content: thread.md with 14-tweet script and thread-preview.html for reviewing demos during recording.

Build scripts generate light-only GIFs for Twitter (1200x700, FontSize 26). Zellij demos use smaller font (16pt) for readability with tabs and multiple panes.
2025-12-29 13:38:27 -08:00
Maximilian Roos 68db3fcc8e Improve search input stability during view transitions
Refactor search container to use :focus-within for expanded state and
view-transition-name to freeze the search box during page navigation.
This prevents layout shifts caused by input shrinking when focus is lost
during the view transition. Update search.js to only clear suggestions
on modifier-click (new tab/window) to avoid jarring shrink during normal
navigation.
2025-12-11 11:35:57 -08:00
Maximilian Roos 9848b9ed4e Add GitHub social card image 2025-12-11 00:39:11 -08:00
Maximilian Roos 54d0ccd616 Remove Juice theme dependency, build standalone custom theme
Custom "warm workbench" theme now self-contained without Juice inheritance. Eliminates theme extension complexity and provides complete control over documentation site design.

Key changes:
- Removed docs/themes/juice submodule and all Juice template inheritance
- Rewrote base.html as standalone template with full HTML structure
- Migrated all Juice CSS variables and utilities into custom.scss
- Updated config.toml to remove theme reference and rename juice_* config keys
- Consolidated template structure: page.html and index.html now extend base.html directly
- Removed lychee exclusion for Juice theme README (no longer applicable)
- Moved normalize.css from theme to docs/static for direct control

The theme is now fully self-hosted with no external dependencies, making it easier to maintain and extend.
2025-12-05 19:08:20 -08:00
Maximilian Roos ea6563c763 Add social card image and enable OpenGraph/Twitter sharing
Add social-card.png (1200x630) to support OpenGraph and Twitter Card
previews. Uncomment and activate the og:image, og:image:width,
og:image:height, and twitter:image meta tags. Change Twitter Card type
from "summary" to "summary_large_image" to display the social card.
2025-12-05 01:58:43 -08:00
Maximilian Roos f69599d24f Move demo assets to separate repository for CDN distribution
Add fetch-assets script to download demos from worktrunk-assets repo during local development, replacing static GIF checked into this repo. Update lychee config to skip localhost URLs during CI link checks. Remove wt-demo.gif and add docs/static/assets/ to gitignore since assets are now fetched at dev time.
2025-12-04 17:50:35 -08:00
Maximilian Roos 8a372ab741 Use rembg to remove logo background and simplify corner radius logic
Add rembg as a requirement to automatically remove the generated logo
background. Replace the complex ImageMagick corner radius operations with
a simple resize, since rembg produces clean transparent backgrounds.
Update logo assets with new transparent versions.
2025-12-03 21:58:09 -08:00
Maximilian Roos a90948e16b Automate logo generation with single output to docs/static/
Replaces the multi-variant workflow with a single gemimg call that
generates one logo, then processes it into three sizes: logo.png (512px),
logo@2x.png (1024px), and favicon.png (32px). Each variant gets rounded
corners applied with appropriate radius for its size.

Updates favicon from SVG to PNG to match the generated logo style.
Updates base.html template to reference the new favicon.png.
2025-12-03 17:24:44 -08:00
Maximilian Roos 08701c1712 feat: add mobile menu to docs site
Implement a responsive mobile navigation menu for the documentation site,
activated at the 768px breakpoint. Includes a hamburger toggle button in
the header, slide-out menu drawer with overlay, and keyboard/click-to-close
functionality.

- Add mobile menu toggle button with animated icon swap
- Create slide-out menu drawer with documentation navigation
- Add semi-transparent overlay that closes menu on click
- Implement keyboard (Escape) and link-click menu close handlers
- Auto-close menu on viewport resize to desktop sizes
- Add mobile-specific styling for nav items and table of contents
- Load mobile-menu.js script for interaction handling
- Adjust z-index layering for menu drawer (200) and overlay (199)
2025-12-03 09:23:15 -08:00
Maximilian Roos 104fc21b54 refactor: update docs brand color from green to amber
Adjust color palette to reflect new amber branding across all
documentation components including hero section gradients, button
shadows, focus states, and dark mode variants. Updated CSS variables
and RGBA color values throughout custom.scss and _variables.html.
2025-12-03 08:56:50 -08:00
Maximilian Roos 1717529783 Add copy-to-clipboard button for code blocks
Implements a floating copy button that appears on code block hover, with special handling to strip shell prompts from terminal blocks before copying.

New files:
- code-copy.js: Attaches copy buttons to all code blocks, strips leading `$ ` from bash/shell/terminal blocks, shows checkmark feedback for 2 seconds after successful copy

Style updates:
- .code-copy-btn: Positioned absolutely in top-right, hidden by default with opacity transition, styled to match design system colors
- .content pre:hover .code-copy-btn: Reveals button on code block hover
- Button includes copied state with accent color highlight
2025-12-02 22:55:32 -08:00
Maximilian Roos a0b9a21be0 Docs: Implement dark mode for improved user experience 2025-12-02 16:17:46 -08:00
Maximilian Roos a5184aa17d Feat: Add logo generation script and update docs
This commit introduces a new script `dev/generate-logo.sh` along with its prompt `dev/logo-prompt.json` to create logo variants.

It updates the documentation to:
- Reference the new PNG logo files instead of the old SVG.
- Include `logo-variant-*.png` in the `.gitignore`.
- Update the favicon to use the new logo's style.
- Adjust CSS for logo display and hero image.
2025-12-02 14:20:27 -08:00
Maximilian Roos b2c3d70f51 Docs: Add client-side search functionality
Adds an in-docs search bar, using elasticlunr with Zola's built-in search index. Search results are displayed as an in-page dropdown.
2025-12-02 12:45:16 -08:00
Maximilian Roos b1c0be7415 Add intro page to documentation
- The `intro` page provides a high-level overview of Worktrunk.
- The homepage now displays the content of the `intro` page.
- Renames `quickstart` to `intro` in the navigation.
- Updates page weights to accommodate the new `intro` page.
- Updates snapshot sync for doc files.
2025-12-01 21:07:40 -08:00
Maximilian Roos 8d8b3495f0 docs: Improve SEO with meta description and robots.txt
Add a meta description to the base HTML template for better search engine indexing.
Introduce a `robots.txt` file to manage web crawler access and provide a sitemap link.
2025-11-30 18:50:00 -08:00
Maximilian Roos 1be558a785 feat: Add GitHub Pages deployment workflows (#65)
* Refactor: Standardize user messages for improved clarity

This commit introduces a set of refinements to user-facing messages across the application. The goal is to ensure consistency in tone, terminology, and presentation, making interactions more intuitive and understandable for users.

* feat: Add a documentation site for Worktrunk

This commit adds the initial scaffolding for the Worktrunk documentation site, built with Zola and a customized Juice theme.

The site includes:
- Basic configuration (`config.toml`)
- Custom SASS styling (`custom.scss`)
- Custom SVG logos and favicons
- Overridden Zola templates (`base.html`, `index.html`, `page.html`)
- Markdown content for:
    - Quick Start
    - Concepts
    - Configuration
    - Commands Reference
    - Advanced Features
    - FAQ

The content is an initial auto-generated draft and requires review for accuracy and completeness before being considered production-ready. A `CLAUDE.md` file is included to highlight this and list necessary verification steps.

* feat: Add GitHub Pages deployment workflows

Build Zola docs site and deploy to worktrunk.dev on push to main.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-11-30 18:22:28 -08:00