claire vo
← back to the notebook

How I Happy Hour screens and Lenny Summit prep

Worked on How I Happy Hour and got ready for my Lenny Summit talk. I built the event app with Codex, refined the phone form in the browser, and added a slide rotation for the room’s screens. Also got the CXO.dev postcards ready for print and cut my Keynote speaker notes down to a few cues per slide. Much easier to glance at while speaking.

Codex + Figma MCP + Browser comments + Next.js + Vercel + agent-browser

Build an event screen from Figma and a slide PDF with Codex

For How I Happy Hour, I wanted people to share an AI workflow from their phone and see it appear on a screen in the room. I gave Codex our Figma branding and a brief, then opened the app it built and directed changes by commenting on the page in the browser.

It handled the phone form, the rotating board of submissions, and an image people could share afterward. When I added a PDF of event slides, Codex converted the pages and mixed them into the same screen rotation. I could work from the brand files and slides we already had, then give feedback on what guests would actually see.

Bitmap slides feeding a flower projection, with a compact pixel playback strip.
event-screen-pixel.png
Bitmap slides feeding a flower projection, with a compact pixel playback strip.
Promptevent-screen-from-pdf.md
# Turn an event PDF into a rotating screen

Add a full-screen event page that alternates the supplied PDF slides with the app’s live board. Inspect the PDF first, skip genuinely blank pages, and preserve each slide’s aspect ratio and complete content. Convert the pages into appropriately sized browser assets without requiring me to export them one at a time.

Make the screen loop automatically. Choose sensible reading time for each type of slide, include pause and next/previous controls, and let the controls fade while the screen is playing. Keep the live board fresh between slide appearances.

Preview at the display’s resolution. Verify every slide loads, nothing is cropped, the live board appears, and the playlist returns to the beginning. Show me the complete preview. Deploy when requested, then verify the deployed screen and tell me whether already-open screen tabs need a refresh.