Workflow Hub

Share your best AI workflow. We could show it to 2M+ people.

Every day, we feature the community's top-voted AI workflow in The Rundown newsletter.

Build Consistent Cinematic AI Video Sequences with Claude Skills

I produce cinematic AI video. What ruins a sequence is almost never image quality; it is drift. The face, jacket, and light change between shots, so what should read as one scene becomes a gallery of near misses. Most people fight this by regenerating until something matches. I built the opposite: a set of chained Claude skills that locks a character once and never lets the model improvise again. The lesson that started it cost me 72 credits in one unusable shot. I fed a finished POV frame as an image reference to “set the world” for a motorcycle sequence. The model treated it as a strong identity reference, cloned the entire cockpit from that frame, and ignored the bike I was describing in the prompt. Image references are read as identity, not atmosphere. That misunderstanding is why most people’s characters mutate. Step-by-step: 1. I lock the character before generating anything. I fill nine layers in order: identity and facial structure, skin realism, wardrobe and materials, emotional energy, environment, lighting scheme, camera language, vertical 9:16 framing, and a fixed block of negative instructions. A generic prompt returns a generic face. This is direction, not a portrait. 2. I shoot a character sheet: a neutral, multi-view image of the locked character on white. That sheet—not a pretty hero frame—is what I reuse as a reference from then on. 3. I expand coverage instead of reinventing the scene. One locked scene becomes a full shot list with hero angles, macro inserts, and establishing shots. The subject, wardrobe, weather, and lighting never change between prompts. Only the camera, focal length, framing, and distance change. Every prompt restates the entire world from scratch because the generator has no memory between images. Consistency comes from redundancy, not from the model remembering. 4. I time the story before animating. I create a 3x3 board with nine beats over fifteen seconds, with each panel showing its timecode, shot title, and action. The rule is strict: the character, wardrobe, world, and light stay identical across all nine panels; only the story advances. The emotional scale rises toward panel nine. 5. I generate with reference discipline. I pass the object or vehicle in a clean exterior shot as the only image reference, then describe the world, framing, and interior in text, repeating that description word for word across shots. I chain consecutive shots by feeding the last frame of one as the start image of the next. The joins are invisible. 6. I review the board against the renders, keep the shots that hold, and regenerate only the ones that drift. The result is that I stopped paying the regeneration tax. Shots are budgeted, not gambled, and a fifteen-second sequence holds together because it was blocked like a real scene—with coverage and continuity—before a single frame existed. The nine-layer character build and the coverage framework are adapted from two AI video courses plus twenty years of production. I learned the reference discipline in step five the expensive way.

Guillermo Gómez
  • Claude Code
  • Seedance
4

Built Timelanes: Turn any topic into a sourced, shareable timeline in seconds

I built Timelanes so you can type any topic into one text box, such as “The Space Race” or “my grandfather's war years,” and generate a visually engaging, sourced, shareable timeline in seconds. Step-by-step: 1. Type a topic into the text box. 2. Let AI generate the timeline with dated events, short descriptions, and source links. 3. Review citation coverage for each event to see what's verified at a glance. 4. Edit and reorder events, add images and milestones, and choose a theme. 5. Publish the timeline with one click to create a shareable page and embeds that auto-render in Substack and Notion. 6. Export the timeline as a PDF, Markdown file, or CSV. Bonus: Compare mode places two or more timelines on one shared axis so overlaps stand out.

Michael Guthrie
  • Claude Code
  • Claude
  • Claude Cowork
  • Gemini
  • Google Drive
6

Used Claude Code to build a web application for tracking Business Development Manager activity end to end

I used Claude Code to build a web application that helps a company track Business Development Manager activity end to end. I gathered data from Excel worksheets and organized it in a relational database so the Business Development Managers could share their activity. Step-by-step: 1. I gathered the Business Development Managers’ activity data from Excel worksheets. 2. I organized the data in a relational database. 3. I built a web application with Claude Code to track and share the activity end to end.

Darren Tang
  • Claude Code
2

Build a Work Order Platform for Laser Engraving and UV/DTF Printing

I built a complete work order platform using Claude Cowork, ChatGPT, and Base44 for my walk-in laser engraving and UV/DTF printing company. The platform takes customers from their initial meeting through final pickup, captures all the required project information, and prints a work order that travels with the project throughout the shop. We use connectors for Twilio SMS messaging, Gmail email communications, Square payments, and Shopify to capture online sales. Customers receive an SMS message the first time they visit and are kept informed throughout the process. We use a Kanban-style board to move projects through each stage. We call the platform FlowTrax.app. It tracks all required customer information, each request, and all communications associated with every sale. It also brings our online sales into the same workflow so we can track their progress. The platform has made us more efficient, and we no longer lose previous customer information. Step-by-step: 1. I built the platform with Claude Cowork, ChatGPT, and Base44 for our laser engraving and UV/DTF printing company. 2. I capture the customer’s information, project request, and required project details during the initial meeting. 3. I print a work order containing the required information so it can travel with the project through the shop. 4. I use Twilio for SMS messaging and Gmail for email communications throughout the process. 5. I use Square to process payments and Shopify to bring online sales into the workflow. 6. I send customers an SMS message when they first come in and communicate with them throughout the process. 7. I move projects through the workflow using a Kanban-style board until final pickup. 8. I track customer information, requests, communications, and the progress of both in-person and online sales in FlowTrax.app.

Ron Phillips
  • ChatGPT
  • Claude Code
4

Build a Film Portfolio That Proves the Work Wasn't Luck

I spent twenty years producing documentary and nonfiction films, all of it the expensive way: crews, schedules, financing, and commissioners saying no. I'm proud of much of that work, and I still think about the films that never got made because the money wasn't there. Generative video pulled me in, but not for the reason people assume. It wasn't the speed or the cost. It was the fact that I could finally finish something without asking anyone for permission. No green light from a major platform. Nobody deciding that a story was too small to deserve a crew. A year later, I could produce this way. It turned out to be a different job rather than the same job with new tools. Then I ran into a problem I hadn't considered: how do you show the work? A finished shot doesn't prove much anymore. A client can look at a beautiful frame and have no way to tell whether it took three weeks or three minutes. If I'm honest, neither would I in their position. The thing every portfolio is built to display had stopped being evidence. I'm not a developer. I produce films. The site is bilingual, has seven sections, includes a case study for each film, plays video on hover, and has a comparison slider that works with a thumb as well as a mouse. I built all of it. I'd wanted this exact site for about fifteen years and had never managed to explain it properly to anyone I paid to make it. This time, I stopped explaining and built it myself. The middle of the page has a slider that you drag between the storyboard panel and the final shot. A basic before-and-after would prove nothing; you can fake that by generating twice. The storyboard is the proof because the framing, eyeline, and decision about what stays outside the frame all existed on paper before any model was asked to generate anything. You drag the handle and watch the intention survive. The rest of the site came from the same place. Video only plays on hover and is silent until you click for sound. Most video portfolios are unreadable because fifteen things start moving at once. The sections are organized by register rather than by client: epic, brand, animation, and lifestyle. A wall of logos answers who has hired you, which nobody is actually wondering. What they want to know is whether you can change tone. Nothing is cropped to fit the grid. A 5:33 film sits in 16:9 next to a 2:42 film in scope, and the layout is lopsided because of it. I nearly made them uniform because it looked tidier, then realized I was about to reformat my own films so a webpage would look neat. Anyone who cuts for a living spots that immediately. Concepts are labeled as concepts. Experiments have their own section instead of being scattered among the client work and hoping nobody asks which is which. Step-by-step: 1. I started from what my client couldn't verify: the craft behind a shot. 2. I found the artifact that proves it. It's usually the ugly thing nobody publishes: the storyboard, the reference sheet, or the version before the good version. 3. I put that artifact next to the finished piece inside one interaction, so nobody has to search for the proof. 4. I made playback deliberate. Video plays on hover, and sound requires a click. 5. I sorted the work by the question being asked rather than by the credentials I wanted to lead with. 6. I didn't reformat the work to fit the layout. I let the grid be uneven. 7. I labeled everything honestly: client, concept, or experiment. One word each can pay for the credibility of the whole page. 8. I wrote a brief for each section as a document first. Arguing with a paragraph is free; arguing with a built page is not. 9. I built the site with an AI coding tool. This was the least interesting step, even though it's the one everyone writes about. If your work can be mistaken for a lucky prompt, stop trying to prove it with the finished piece. The site is at www.termopilas.tv if you want to drag the handle yourself.

Guillermo Gómez
  • Claude Code
3

Use Claude to Summarize Books and Test Reading Comprehension

I’ve found it useful to use Claude while reading nonfiction books, such as *Factfulness* by Rosling. I ask Claude for a synopsis of the book and save the result as a PDF on my computer for future reference. I also ask Claude to quiz me about the book, either with multiple-choice questions or in short-answer format, to test whether I’ve fully understood what I’ve read. In an ongoing conversation, Claude can also relate the current book to other books I’ve recently read and provide additional synopses. Step-by-step: 1. I tell Claude which nonfiction book I’m reading, such as *Factfulness* by Rosling. 2. I ask Claude to create a synopsis of the book. 3. I save the synopsis as a PDF on my computer for future reference. 4. I ask Claude to quiz me using either multiple-choice or short-answer questions. 5. I continue the conversation so Claude can relate the book to other books I’ve recently read and provide further synopses.

John Bisese
  • Claude Code
2

Use a Spec-Generator Agent Before AI-Assisted Coding

AI coding tools can build quickly, but they can also build the wrong thing quickly. Starting implementation from a vague feature request leaves important decisions about scope, architecture, edge cases, success criteria, and expected behavior to be made implicitly during coding. I created a spec-generator agent that sits between an idea and implementation. I give it a feature request, product vision, or rough description of what I want to build. It investigates the existing project, identifies missing decisions and constraints, researches external dependencies when necessary, and turns the request into a detailed specification that another AI agent can implement without having to guess what I meant. The finished specification becomes the source of truth for the rest of the development workflow. Step-by-step: 1. I give the spec-generator the feature or product idea I want to build, along with any existing requirements, vision documents, or constraints. 2. I have it inspect the existing project before proposing a solution. It needs to understand the current architecture, conventions, capabilities, and relevant prior decisions rather than designing the feature in isolation. 3. I have it identify ambiguities and missing decisions, including questions about users, behavior, scope, dependencies, edge cases, data requirements, integrations, and what is explicitly out of scope. 4. I have it research external technologies, APIs, libraries, or platform capabilities when the design depends on facts that cannot be determined from the repository alone. 5. I have it translate the idea into a layered specification: first the product purpose and desired outcomes, then the technical architecture, and finally the detailed implementation requirements. 6. I have it define measurable success criteria and acceptance tests so that “done” means something concrete rather than simply “the code was written.” 7. I have it persist the finished specification in the project so developers or coding agents can treat it as the source of truth during implementation. 8. I pass the specification through a separate review or validation step before coding begins, resolving gaps or contradictions in the spec rather than discovering them halfway through implementation. Instead of asking an AI coding agent to interpret a rough idea while it writes code, I separate figuring out what should be built from building it.

Tony Ojeda
  • Claude Code
  • Codex
7

Turned Claude Code file handoffs into drag-and-drop with a folder that signals completion

I had a file sitting on my desktop that Claude Code needed to see—a spreadsheet, a PDF, or a screenshot someone sent me—but a terminal had nowhere to drop it. Typing the path was the only option. In WSL, that meant rewriting `C:\Users\me\Desktop\report.xlsx` as `/mnt/c/Users/me/Desktop/report.xlsx` by hand every time. I set up two folders at the root of my Claude Code workspace: `_inbox/` for files going to Claude and `_outbox/` for files coming back to me. The names are from the workspace’s point of view, so the direction is never ambiguous. I also added a single line to `CLAUDE.md` so Claude knows where to leave things: "Save deliverables meant for me (reports, exports, drafts) to _outbox/." That one line handles the entire return trip. For the desktop handoff, I installed a small window pointed at the workspace folder. Disclosure: the window is mine—claude-work Desk, open source and free, at github.com/tact0225/claude-work-desk. Setup takes about two minutes and requires no terminal. Anything dropped onto it is copied into `_inbox/`. If you’d rather not install anything, you can drag files into `_inbox/` with Explorer or Finder; every other step still works. Now I drag files onto the window instead of typing a path. The file lands in `_inbox/`, and the window logs it with a timestamp so I can see that it actually arrived. Then I tell Claude, "check _inbox"—no paths and no `/mnt/c` rewriting. When Claude finishes, it saves the results to `_outbox/`. The window watches that folder and marks anything new in the tree until I open it, so finished work announces itself. I no longer interrupt Claude to ask, "Is it done, and where did you put it?" Step-by-step: 1. I created `_inbox/` and `_outbox/` at the root of my Claude Code workspace, using the workspace’s point of view to define the direction of each folder. 2. I added `"Save deliverables meant for me (reports, exports, drafts) to _outbox/."` to `CLAUDE.md`. 3. I installed claude-work Desk and pointed its desktop window at the workspace folder. Alternatively, I can use Explorer or Finder to place files directly in `_inbox/`. 4. I drag files onto the window, which copies them into `_inbox/` and logs their arrival with a timestamp. 5. I tell Claude, "check _inbox". 6. Claude saves finished results to `_outbox/`, where the window marks new files until I open them.

Keiichiro Honda
  • Claude Code
5

Scan AI Agent Tools for Malware Before Installation

AI agents such as Claude Code, Codex, and Gemini can install skills, plugins, and CLI tools in seconds. That is convenient, but each add-on runs with access to files, passwords, and accounts. A malicious add-on could steal API keys, read private data, or quietly take control of the agent. I use `agent-guard` to make “check first, install after” the default. Before installation, it examines AI agent skills, MCP servers, and CLI tools for malware, prompt injection, and credential theft using professional, open-source security scanners from NVIDIA, Cisco, Datadog, and the Open Source Security Foundation. The tool returns a clear verdict: safe to install or blocked, with the exact reason. It then installs only the verified version, preventing a different version from being swapped in between. A single check can also cover multiple AI agents, installing the approved add-on into every agent on the machine. Free and open source: https://github.com/elliottwaves-20/agent-guard Step-by-step: 1. I select the AI agent skill, MCP server, or CLI tool I want to install. 2. I run `agent-guard` to scan it for malware, prompt injection, and credential theft. 3. I review the verdict and the reason if the add-on is blocked. 4. I install the exact version that was checked rather than an unverified replacement. 5. If I use several AI agents, I install the approved add-on into all of them at once.

Patrick Illian
  • ChatGPT
  • Claude Code
  • Claude
  • Gemini
  • Codex
3

Build a Vegetable Garden Planner with Claude

I’m a nurse with no tech experience, but I’m curious and have many creative ideas. I used Claude to build a website that helps people plan which vegetables to grow based on their location, available space, and the time they have. Veggiegrowguide.com Step-by-step: 1. I identified an idea for helping people choose vegetables to grow based on their location, available space, and available time. 2. I used Claude to help me build a website for the idea. 3. I created Veggiegrowguide.com as a resource for people planning their vegetable gardens.

Anon Quokka
  • Claude Code
1

Build a Real-Time Cyber Threat Map for IT Onboarding

My company takes cybersecurity seriously, and part of our new-hire onboarding process is a tour of the IT department to meet the team. Our walls have several screens displaying metrics and information from our security tools, firewalls, and other systems. It looks like a scene from a movie. By far, the most popular display is our custom-made Cyber Threat Map, which shows real-time attempts to infiltrate our network, malicious emails, and other security threats we're blocking. The map drives home the reality of what we're facing 24/7 while protecting our employees, vendors, and customers. I built it using Claude Code. It polls a range of devices and systems through APIs, aggregates the data on one screen, and displays attack vectors, location information, and other details from the last 30 days. Step-by-step: 1. I identified the security tools, firewalls, devices, and systems that provide relevant threat data. 2. I used Claude Code to build a custom Cyber Threat Map. 3. I connected the map to the devices and systems through their APIs. 4. I aggregated the data on a single screen, including attack vectors, location information, and other details from the last 30 days. 5. I displayed the map during IT department tours so new hires could see the real-time threats our company is blocking.

John Duval
  • Claude Code
  • Claude
3

Build a Claude-powered fantasy hockey draft and lineup assistant

I built a fantasy hockey assistant with Claude Code for my Yahoo league. It supports two parts of the league: running our in-person draft and managing my team during the season. For the draft, it runs on my laptop as a live draft board. I enter each pick as it is announced, and the assistant re-ranks the remaining players based on what my roster still needs. The rankings combine projection sources with three seasons of NHL statistics, and each player is scored according to how much they would help in each of our ten categories. The board flags players who will likely be selected before my next pick, identifies injury and regression risks, and opens a detail card for any player with projections, historical data, and a short plain-English assessment. A separate display goes on the TV for the room, showing the pick clock, the next player on deck, and recent picks. After the final pick, the view switches to projected standings for every team, color-coded by category. During the season, I paste in my roster, and the assistant pulls the NHL schedule, starting-goalie reports, and injury news. It suggests the best lineup for each day, ranks free agents by value and by games played that week, and projects my weekly head-to-head matchup category by category. It can also ask Claude to propose a lineup and explain its recommendations, which costs about ten cents per run in API credits. Yahoo’s API is read-only. If it supported write access, I would probably have the app manage my team autonomously. Step-by-step: 1. I built the fantasy hockey assistant with Claude Code for my Yahoo league. 2. During the in-person draft, I run the assistant on my laptop as a live draft board and enter each pick as it is announced. 3. The assistant re-ranks the remaining players based on my roster’s needs, using projection sources, three seasons of NHL statistics, and each player’s value across our ten categories. 4. I use the board’s flags and player detail cards to evaluate likely pre-next-pick selections, injury and regression risks, projections, historical data, and plain-English player assessments. 5. I display the pick clock, next player on deck, and recent picks on a separate TV view, then switch that view to color-coded projected standings by category after the final pick. 6. During the season, I paste in my roster so the assistant can pull the NHL schedule, starting-goalie reports, and injury news. 7. I use that information to set daily lineups, rank free agents by value and weekly games played, and project my head-to-head matchup category by category. 8. When needed, I ask Claude to propose a lineup and explain its recommendations, at a cost of about ten cents per run in API credits. 9. Because Yahoo’s API is read-only, I currently use the assistant for recommendations rather than autonomous team management.

John Duval
  • Claude Code
3

Keep Google Calendar Updated from WhatsApp Groups with Claude

I was tired of tracking events across my WhatsApp groups by hand and overcommitting myself, so I built a daily AI assistant that reads the groups and keeps my Google Calendar up to date automatically. I'm in six busy groups: multiple cricket chats, a tournament group, a volunteering rota, a weekly class, and a tennis club. Events arrive as polls, times change, venues are added, fixtures are cancelled, and the same match is often posted in multiple groups. A Claude Cowork scheduled task runs every morning. Using Claude in Chrome, it opens WhatsApp Web and reads only the fixed list of six named groups, starting from where it stopped last time. It turns messages into calendar events based on polls, merges duplicates across groups by matching the event type, date and time, and venue, and emails me a short digest covering what changed, what needs my attention, and which chats I had already read myself. I can reply to that email to steer it—for example, “delete that,” “move to 6pm,” or “why did you create this?”—and the next run acts on or answers my reply. Three small files next to the prompt make the workflow reliable: - `state.json` records where each chat was last read and which events it owns. It never overwrites a field I edited by hand. - `run.log` contains a one-line record for every action and the reason for it, so the assistant can answer questions weeks later without rereading WhatsApp. - `lessons.md` holds rules it writes for itself when something goes wrong, such as “WhatsApp changed its page layout, use this selector instead.” It reads these rules every run and can improve them. The key prompt rules are: “Your sources are exhaustive: these six chats and nothing else. Reading a chat that is not a source is itself the failure.” “Never create a second event for the same occasion. Merge; the first source owns it.” “Fields I changed by hand are locked. Report conflicts, don't overwrite.” “Send the digest every run, even when nothing happened, so silence means the run failed.” The result is that my calendar follows my WhatsApp groups without me doing anything, and each morning’s email flags the two or three things that actually need a decision. Step-by-step: 1. I define a fixed list of six named WhatsApp groups as the only allowed sources. 2. I schedule a Claude Cowork task to run every morning. 3. Using Claude in Chrome, the task opens WhatsApp Web and resumes reading each source from where it stopped last time. 4. It turns messages and polls into Google Calendar events, updating times, venues, and cancellations as needed. 5. It merges duplicate events across groups by matching the event type, date and time, and venue, while keeping the first source as the event owner. 6. It protects fields I edited by hand and reports conflicts instead of overwriting them. 7. It records chat progress and event ownership in `state.json`, logs every action and its reason in `run.log`, and reads `lessons.md` for rules learned from previous problems. 8. It emails me a digest every run, including what changed, what needs my attention, and which chats I had already read myself. 9. I reply to the digest when I want to delete an event, move it, or ask why it was created; the next run acts on or answers my reply.

Taha Firoz Bharucha
  • Claude Code
2

Build a Map-Based Beauty Services Discovery Website

I built GlowNextDoor (glownextdoor.com), a map-based website for discovering nearby hair salons, barbers, nail studios, lash specialists, and other beauty services. I used ChatGPT/Codex and Claude to develop the idea, compare designs, and refine the experience. I then built and published the website with Base44. I connected Google Maps for live business listings and added location detection, distance and rating filters, reviews, directions, and links to salons’ existing booking systems. Through repeated testing on desktop and mobile, I improved the layout, added favorites without requiring a login, created realistic animated category icons, and included an option to add the website to a phone’s home screen. Finally, I connected a custom domain through Blacknight and configured Google Maps usage limits to control costs. My workflow was to describe each feature, review the AI-generated result, test it in the browser, and iterate before publishing. Step-by-step: 1. I described each GlowNextDoor feature to ChatGPT/Codex and Claude while developing the idea and comparing design options. 2. I built and published the website with Base44. 3. I connected Google Maps for live business listings and added location detection, distance and rating filters, reviews, directions, and links to existing booking systems. 4. I tested the website repeatedly on desktop and mobile, then refined the layout and added favorites without requiring users to log in. 5. I created realistic animated category icons and added an option to install the website on a phone’s home screen. 6. I connected the custom domain through Blacknight and configured Google Maps usage limits to control costs. 7. I reviewed each AI-generated result in the browser, iterated on it, and published the updated version.

Michael King
  • Claude Code
  • ChatGPT
2

Build a Multi-Channel Load Blast Platform for Freight Brokerage

I work in the freight brokerage industry. When speaking with trucking companies, we usually want to send offers to multiple contacts at once. This is called a load blast. Clients prefer different communication channels, mostly email and Telegram, so freight brokers often have multiple screens open to manage all of those conversations. Using Claude Code, I built a platform where I can save each client’s preferred communication method—email or Telegram—once. The platform then blasts the load information to the appropriate contacts through their chosen channels. I also built a tooltip guide to help non-technical salespeople set up the system. It guides them through adding contacts, connecting Telegram, and sending load information to multiple contacts at once. This lets them manage the process from one screen instead of switching between multiple screens. This process happens hundreds of times per day. Based on the demo, I convinced my company to start building the same platform internally. Step-by-step: 1. I identified that freight brokers needed to send load offers to multiple trucking-company contacts at once, or create a load blast. 2. I built a platform with Claude Code that lets me save each client’s preferred communication method, such as email or Telegram. 3. I configured the platform to send load information to contacts through their selected communication channels. 4. I added a tooltip guide explaining how non-technical salespeople can add contacts, connect Telegram, and send a load blast. 5. I designed the process so salespeople could manage these communications from one screen instead of using multiple screens. 6. I demonstrated the platform to my company and convinced them to start building it internally.

Thomas (Josh) Thephasdin
  • Claude Code
2

Turned my AI coding assistant into a pre-launch security and readiness auditor

Before I ship anything built with AI—whether I use Lovable, Cursor, Replit, or Bolt—I run a security and readiness audit. I ask my AI assistant to clone the free, open-source repo at github.com/edgewiselab/ship-kit and scan my project. It identifies my stack from the code on its own, with no configuration required. The audit checks for 113 known launch mistakes, including open databases, leaked secrets, emails going to spam, missing error tracking, and more. It skips anything that doesn't apply to my app. It generates a plain-English report: green means everything is fine, red means I need to fix something, and amber means I need to confirm it myself. I hand the red items back to my AI assistant to fix, then rerun the scan until the report is clean. The tool is free, MIT licensed, and runs entirely on my own machine. Step-by-step: 1. I ask my AI assistant to clone `github.com/edgewiselab/ship-kit` and scan my project. 2. I let it identify my stack from the code without adding any configuration. 3. I review its checks for 113 known launch mistakes, including open databases, leaked secrets, emails going to spam, and missing error tracking. 4. I review the plain-English report and focus on the red items while confirming the amber items myself. 5. I give the red items back to my AI assistant to fix. 6. I rerun the scan until the report is clean.

Filipe Rodriguez
  • Claude Code
2

Build a Poker Luck Detection App with Claude

I love playing poker, both online and live. One month, I performed poorly. Although it felt like the cards were running badly, I wondered whether I had developed a problem in my game and was blaming my losses on bad luck. I asked around, including asking AI, whether a tool existed that could measure luck from poker hand histories. The unwelcome answer was that it did not. I'm not a coder, but after doing some research into vibe coding, I started building a luck-detection app in a Claude chat. Claude built the UI directly in the chat window and advised me on the formulas I was using to calculate luck for the cards dealt, my performance on the flop, and my performance when I went all in. All three metrics have strong averages, and luck is what varies them. I used a bell curve to model hand outcomes and a Monte Carlo simulator, which Claude suggested and executed, to evaluate all possible outcomes. The result astonished me because it was so useful. I immediately fixed two major leaks in my game and felt better knowing that bad luck really was the main problem affecting my results. I liked the tool so much that I decided to turn it into a full web app with Claude Code, and now an iPhone app that I may let other people use for free. I also had a lot of fun building it—except for learning how to use Xcode. That was a pain, even with step-by-step guidance from Claude. Step-by-step: 1. I reviewed a month of poor poker results and questioned whether bad luck or problems in my game were causing the losses. 2. I researched whether a tool existed that could measure luck from poker hand histories and learned that I would need to build one myself. 3. I used vibe coding to start building a luck-detection app in a Claude chat. 4. I had Claude create the UI and advise on formulas for evaluating cards dealt, flop performance, and all-in performance. 5. I used a bell curve to model hand outcomes and a Monte Carlo simulator to evaluate possible outcomes. 6. I used the results to identify and fix two major leaks in my game and confirm that bad luck was also affecting my results. 7. I expanded the project into a full web app with Claude Code and then began building an iPhone app, working through the added challenge of learning Xcode.

Sanjay Singhal
  • Claude Code
3

Build a Custom Wedding RSVP and Seating Chart Workflow

Every RSVP tool I found wanted a monthly subscription to collect a few hundred yes-or-no answers, and none would return my data in a format I could use. So I built my own with Claude Code. The RSVP system is small: a form deployed on Vercel and embedded into our wedding website. We also emailed the direct link because plenty of guests might never visit the site. The form asks for more than a yes-or-no response. It collects meal choices, dietary restrictions, and plus-ones. Every submission adds a row to a Google Sheet through the Sheets API. That sheet ended up mattering more than the app. Months later, when it was time to create the seating chart, every guest was already represented in clean, structured rows that I could give to a completely different tool. For seating, I opened the same sheet in Claude and wrote out the rules in plain English: who had to sit together, who could not sit anywhere near each other, which relatives needed a quiet corner, and which friends could anchor a table of people who did not know anyone else. Claude produced a first draft that respected those constraints, along with an interactive board where I could drag people between tables. Step-by-step: 1. Tell Claude Code which fields you want on the RSVP form and have it build the front end and back end. Have Claude deploy it to Vercel. 2. Set up a Google Cloud service account, enable the Google Sheets API, and share the sheet with the service account’s email address. Configure each submission to append a row. 3. Embed the form on your wedding website and email the direct link separately. Some people will never open the website. 4. Ask for everything you will eventually need, not just attendance. Your caterer and venue will want meal counts and dietary restrictions, and going back to collect that information later is miserable. 5. When it is time to seat people, point Claude at the same sheet and write your rules in plain language: who must sit together, who cannot sit together, who needs a quiet table, and who can anchor a table of strangers. 6. Have Claude generate a first draft based on those rules, then move people yourself. This works anywhere you have a public form collecting data and a private tool that needs to reason about it. Put a spreadsheet between them instead of building one app that tries to do both. The form stays simple, and whatever you build six months later can read from the same place.

Dean Mazlish
  • Claude Code
4