Skip to content

Conversation

@ryderstorm
Copy link
Collaborator

@ryderstorm ryderstorm commented Jul 28, 2025

This pull request introduces significant updates to improve the workflow for creating, customizing, and exporting presentation decks in the liatrio_decks directory. Key changes include enhancements to the configuration options, expanded documentation, and the addition of a new automated PDF export tool. Below is a summary of the most important changes grouped by theme.

Configuration Updates:

  • js/config.js: Changed pdfSeparateFragments from true to false to ensure fragments are not printed on separate slides in exported PDFs.

Documentation Enhancements:

  • liatrio_decks/LIATRIO_DECK_README.md: Expanded instructions for creating and customizing decks, added detailed guidance on using AI for deck generation, and introduced comprehensive steps for exporting decks to PDF. [1] [2] [3]

New Features:

  • liatrio_decks/export-pdf.js: Added an automated PDF export tool with support for speaker notes, custom ports, and advanced options like forced overwrite and interactive terminal interface.

Template Updates:

  • liatrio_decks/liatrio_deck_template.html: Enhanced the title slide to optionally display a client logo alongside the Liatrio logo, with styling adjustments for better visual alignment. Added placeholders for Challenge/Solution/Benefits sections to streamline AI-driven deck creation. [1] [2]

Asset Management:

ryderstorm and others added 6 commits July 23, 2025 11:24
…proved file organization

- Add client logo display alongside Liatrio logo on title slides
- Configure .gitignore to exclude custom presentations and assets
- Update callout styling with orange accent and better layout
- Add quote-block CSS class for styled quotations
- Document git-ignore configuration and client logo usage
- Create custom_assets folder with .keep file for user content
- Change PDF export to keep fragments together

This improves the presentation template usability by allowing teams to add
client branding while keeping custom content out of version control.
- Add npm script for easy PDF generation with decktape
- Support speaker notes export with --show-notes option
- Automatically extract presentation title for PDF filename
- Handle server lifecycle (start/stop) automatically
- Allow custom port configuration to avoid conflicts
- Add comprehensive documentation with examples
- Install decktape dependency for high-quality PDF generation

This streamlines the PDF export process from a complex manual workflow
to a simple npm command, making it easier for teams to share presentations.
- Add inquirer dependency for terminal user interface
- Implement interactive file selection from available presentations
- Add overwrite confirmation for existing PDF files
- Improve user feedback with emojis and status messages
- Update .gitignore to exclude generated PDF files

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

Co-Authored-By: Claude <[email protected]>
…tency

- Consolidate AI deck generation instructions from template to README
- Fix client logo path from static/images/ to custom_assets/
- Add interactive PDF export documentation with TUI features
- Document all template features (slide types, special features)
- Add custom port configuration for development server
- Simplify template by referencing README for detailed instructions
- Add resolution preview tip for presentations

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

Co-Authored-By: Claude <[email protected]>
- Add content limits to AI prompt for proper slide sizing
- Fix template examples that caused overflow issues
- Update image constraints to max-height: 60vh with object-fit: contain
- Reduce code slide from 3 blocks to 1 block per slide
- Add font-size: 0.8em for lists with 3+ bullet points
- Add new slide demonstrating proper dense content handling
- Update callout slide to use proper spacing and font sizing

These changes ensure presentations fit properly on standard display
resolutions without sacrificing readability or visual hierarchy.

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

Co-Authored-By: Claude <[email protected]>
…tions

- Add Context Engineering section explaining importance of rich context over perfect prompts
- Provide specific categories for context (audience, situation, goals, constraints)
- Include practical example using Semantic Release scenario
- Update AI prompt template with dedicated CONTEXT section
- Add step to consider provided context when generating presentations

This guidance helps users create more targeted, effective presentations by
providing AI with relevant audience and situational context.

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

Co-Authored-By: Claude <[email protected]>
@ryderstorm ryderstorm self-assigned this Jul 28, 2025
Copy link

@windsurf-bot windsurf-bot bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Other comments (3)
  • package.json (111-111) You're using inquirer v8.x which is the last CommonJS version. If this is intentional (to avoid ESM), that's fine, but if not, consider using the latest version (currently 9.x).
  • package.json (60-60) The 'through2' package has been moved from its original position to after 'sass', breaking the alphabetical ordering convention used in the rest of the devDependencies section.
  • liatrio_decks/static/liatrio.css (267-267) The border-left color in the quote-block class is hardcoded as `#4caf50` instead of using one of the theme's CSS variables like `var(--liatrio-primarygreen)`. For consistency with the rest of the stylesheet, consider using a CSS variable here.

💡 To request another review, post a new comment with "/windsurf-review".

display: none;
"
onerror="this.style.display='none'"
onload="document.getElementById('plus-sign').style.display='block'; this.style.display='block'"
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The client logo has an onload handler that references 'plus-sign' element, but there's no guarantee the DOM is fully loaded when this executes. Consider wrapping this logic in a DOMContentLoaded event listener or moving this script to the bottom of the page.


.quote-block {
border-left: 4px solid #4caf50;
background: rgba(255,255,255,0.03);
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The background color in the quote-block class uses a hardcoded rgba value instead of leveraging CSS variables. Consider using something like background: rgba(var(--liatrio-white-rgb), 0.03); for better maintainability (you may need to add RGB variants of your colors to the root variables).

Co-authored-by: windsurf-bot[bot] <189301087+windsurf-bot[bot]@users.noreply.github.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.

2 participants