Community

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. One post will put you on the radar of top founders, hiring managers, and operators across the industry.

Welcome!

Create a Detailed Landscaping Plan with Claude and Nano Banana 2

I used Claude and Nano Banana 2 to create a detailed landscaping plan for my property. The plan included precise recommendations for plant types and locations, soil testing, purchase lists, local suppliers, expected wholesale pricing, and photorealistic images of the mature planting beds. I refined the plan through 20–30 iterations, incorporating all of my requirements. Because I have previous experience working with landscape architects, I was able to use the AI-generated plan effectively and legitimately saved $5,000 in fees. Step-by-step: 1. I used Claude and Nano Banana 2 to develop a landscaping plan for my property. 2. I included requirements for plant types and locations, soil testing, purchase lists, local suppliers, expected wholesale pricing, and photorealistic images of the mature planting beds. 3. I refined the plan through 20–30 iterations until all of my requirements were incorporated. 4. I used my previous experience working with landscape architects to evaluate and apply the plan. 5. I saved $5,000 in landscape architecture fees.

Tools used
Industry
2

Build an Adaptive Triathlon Training Plan with ChatGPT Work

Training for a triathlon means three sports and a plan that is fiction by Wednesday. A static plan does not know I slept badly, skipped Tuesday's swim, or that Saturday's long ride wrecked me. Adjusting for that is what you actually pay a coach for. I wanted the adjusting without the retainer. So I built it in ChatGPT Work: a Project holding my plan, plus a scheduled agent run each morning that checks the plan against what my body actually did, then fixes the week. Disclosure: I built freddy, the connector feeding ChatGPT my training and recovery data, so I am not neutral here. Step-by-step: 1. Connect your sources at freddy.coach. For triathlon it is whatever records your swims, rides and runs: Garmin Connect, Polar, Suunto, WHOOP or intervals.icu. I use Oura for sleep and recovery, Garmin Connect for sessions, Hevy for strength. History backfills automatically, so the plan is built on your real training rather than what you tell it you did, which is usually flattering. 2. Add freddy as a custom connector: Settings, then Connectors or Apps and Connectors, then Add new, then custom MCP server. The URL is https://freddy.coach/mcp. Sign in and approve read access. Do it on the web; the mobile app cannot add custom connectors. 3. Connect Google Calendar and turn on write actions. This is the step people miss: write actions are off by default, so until they are enabled through action controls the agent can read your week but not change it. With writes on, ChatGPT Work creates and edits events. 4. Create a Project and put the durable facts in the project instructions: race date and distance, realistic weekly hours, immovable days, injury history, weakest discipline, and how blunt you want it. Long-lived facts only, never this week's session. 5. In the project, with freddy on, ask it to build the block: a periodised plan to race day, justified against your actual last 8 weeks rather than a textbook ramp. Keep the plan as a file in the project so every run starts from the same document, and have it write the week's sessions to the calendar with type, duration and intensity in the event body. 6. Schedule the daily run for mid morning, after you are up and your sources have synced. Last night's sleep does not exist anywhere until the watch or ring syncs, so a 5am run reports on the night before last. The standing prompt: "Using freddy, check whether I completed yesterday's planned session: pull yesterday's workouts with type, duration and intensity and compare against what the plan called for. Then pull last night's sleep and this morning's recovery including HRV and resting heart rate, plus training load over the last 7 days, compared against my own 30 day baseline rather than population norms. Then look at today's planned session on my calendar and decide whether it still makes sense. If it does, confirm in one line. If not, change the calendar event to the session I should actually do, put the reason in the event body, and update the plan file. Tell me what you changed and why, naming which source each conclusion came from. If two sources disagree, say so rather than averaging. Never compare HRV across different sources. If anything is ambiguous, such as an unrecorded session or a workout matching no planned one, ask me instead of guessing. Under 250 words." 7. Let it run a week before trusting it, and read what it changed rather than skimming. Expect to tune the instructions early: the usual failure is turning cautious after one poor night, fixed by a line saying a bad night is noise and to downgrade only on a trend or after a hard day. Two things to know. Depending on your approval settings, a run either makes the change or holds it for a tap. Know which you chose: it is the difference between waking to a changed calendar and a proposed one. And agent runs are metered, so keep the daily check narrow and save long reasoning for a weekly review. What surprised me is how good it is at catching the sessions I quietly did not do. It is easy to tell yourself you are on plan, harder when something reads yesterday's file and notes the intervals were short. Gotchas. Make it commit to one call on today's session; "listen to your body" is what you already had. Make it name the source behind each conclusion so you can tell a real finding from a confident guess. Never let it compare HRV across sources, because RMSSD and SDNN are different measurements, not different units, so mixing them looks meaningful while being nonsense. Scheduled runs auto-pause if ignored, so if the check stops arriving, look there before blaming the connector. It is not a certified coach and I would not rehab an injury with it. It is very good at holding a plan, watching what happened, and closing the gap before it becomes a lost week. Cost: freddy is free for one source, but this is cross source so it is the paid plan, $49 a year, on top of ChatGPT. Individual triathlon coaching runs a few hundred a month.

Tools used
Industry
#health#mcp#performance#training#triathlon
6

Build a Cross-Platform Golf Scoring App with AI

I built Shots2Points, a golf scoring app for iPhone and Android, using AI as my development partner. The idea came from organising and playing in golf society events. Stableford scoring itself isn’t particularly complicated, but running an event can be. Organisers have to prepare groups, handicaps, and courses; collect scores from different groups; calculate results; manage withdrawals and ties; and eventually produce a leaderboard. I wanted to simplify that process while also providing an easy scoring app for ordinary casual rounds. The unusual part is how I built it. I’m not a professional software developer, and I don’t have a development team. I started by describing what I wanted the app to do to AI and gradually turned the idea into a working product. My workflow evolved into this cycle: idea → discussion → specification → implementation → real-world test → refinement. I repeat it for each feature. Step-by-step: 1. I define the problem and user experience with ChatGPT. I discuss ideas, challenge assumptions, work through workflows, and decide how a feature should behave before changing the code. 2. Once the behaviour is clear, I turn the idea into an implementation task. I use AI to specify exactly what needs to change, including edge cases and how the new feature should interact with existing functionality. 3. I build and inspect the code with Cursor. Cursor works directly with the project codebase, allowing AI to investigate existing code, implement changes, and report exactly what it changed. I test the result rather than simply accepting AI-generated code. 4. I test development versions on real iOS and Android devices. I follow the actual user journey, take screenshots or capture errors when something isn’t right, and bring those results back into the AI workflow. 5. I use AI to diagnose problems, make another targeted change, and test again. The result is a real cross-platform application rather than a prototype. Shots2Points includes free casual Stableford scoring and an Event Mode designed for golf societies and groups. Organisers can create events, import players, allocate groups, and allow each group to enter scores while everyone follows a live leaderboard. Building the app has required much more than generating code. AI has helped me work through database design, APIs, authentication, in-app purchases, App Store and Google Play requirements, debugging, user-interface decisions, testing, and release management. The biggest lesson for me has been that AI doesn’t remove the need to understand the problem or make decisions. It gives one person access to capabilities that would traditionally have required several different specialists. I provide the product knowledge, requirements, judgement, and testing; AI provides much of the technical capability and an extraordinarily fast feedback loop. That combination allowed me to take a personal idea for improving golf scoring and event management and turn it into a functioning iOS and Android product.

Tools used
Industries
#aiappdevelopment#golf#mobileappdevelopment#reactnative#vibecoding
5

Build an AI Email Guard Against Phishing Scams

My father-in-law has had some close calls with phishing attacks, so I built a digital bodyguard with Claude Code to watch over their email around the clock. It’s designed to catch scam and phishing attempts that are specifically crafted to fool people: fake bank alerts, urgent “click here” links, and messages pretending to be from someone they trust. When it spots one, it pulls the message out of the inbox into a separate folder and sends me an alert so I know it happened. I wrote up the full system, including the prompting and context, in GitHub: https://onabetternote.substack.com/p/using-ai-to-guard-against-email-scams?r=6ihgge&utm_campaign=post-expanded-share&utm_medium=web Step-by-step: 1. I built a digital email bodyguard with Claude Code to monitor my father-in-law’s email around the clock. 2. I configured it to look for phishing and scam messages, including fake bank alerts, urgent “click here” links, and messages impersonating trusted people. 3. When it identifies a suspicious message, it moves it from the inbox into a separate folder. 4. It sends me an alert whenever it takes action. 5. I documented the full system, including the prompting and context, in GitHub.

Tools used
Industry
#security
5

AI-Assisted Genealogy Research for a Family Mystery

I used AI to help investigate a family mystery that had remained unresolved for decades: identifying the biological family of my maternal grandfather. The challenge was not a lack of information. It was almost the opposite. I had DNA matches, family trees, names, dates, historical records, old photographs, obituaries, Facebook genealogy groups, and conversations with possible relatives. The difficult part was connecting all these scattered clues without jumping to conclusions. I built a research workflow in which AI acts as an investigation partner, not as the source of truth. Step-by-step: 1. I gathered the information I already had from genealogy platforms, DNA matches, family trees, historical documents, and family records. 2. I used ChatGPT to organize the evidence into people, dates, locations, relationships, DNA connections, documents, and unresolved questions. 3. I separated the information into three categories: confirmed facts, hypotheses, and missing information. 4. Instead of asking AI, “Who was my grandfather's biological father?”, I asked it to analyze possible family connections and identify which hypotheses were compatible with the available evidence. 5. For each hypothesis, I looked for supporting evidence, contradictory evidence, and information that was still needed. 6. I treated AI-generated connections as leads rather than genealogical proof. The goal was to use AI to decide what to investigate next, not to have it find the answer. 7. I used AI to compare family branches, surnames, generations, locations, and possible relationships among DNA matches whose family connections I did not immediately recognize. 8. When a promising connection appeared, I returned to the original genealogy and DNA sources to verify it. This gradually turned a long list of DNA matches into a smaller number of research paths. 9. I used AI to draft respectful, personalized messages to DNA matches and members of genealogy communities, including people in another country and language. 10. In each message, I explained what I was researching, what connection I suspected, what information I already had, and what I hoped the recipient might be able to confirm or rule out. 11. I treated their responses as new evidence and repeated the investigation loop: evidence → AI analysis → hypothesis → verification → human contact → new evidence → updated hypothesis. The final result is not an “AI-generated family tree.” It is a human-led investigation in which AI helps manage complexity, ask better questions, and identify the next useful action. The most important lesson I learned is that AI is particularly useful in genealogy when you do not ask it to give you the answer. Ask it to help you build the investigation.

Tools used
Industry
#dataanalysis#dna#familyhistory#genealogy#research
4

Automate Credit Card Expense Tracking in Google Sheets with Make

I built a workflow to track my monthly credit card expenses and keep them within my budget. Tracking my expenses is important to me because I want to reach my financial goals through consistency and healthy habits. However, entering each expense manually into Google Sheets was tiring and took several hours. I used Make to automate the process. The workflow reads the email from my bank every time I use my card, gathers the necessary information, converts it to JSON, and adds it to Google Sheets. It runs every six hours, every day, so I no longer need to spend my weekends reviewing expenses. Now I have more free time to build something else and only need a couple of minutes to review Google Sheets and make sure everything is working properly. Step-by-step: 1. I set up a workflow in Make to monitor emails from my bank whenever I use my credit card. 2. The workflow gathers the necessary expense information from each email. 3. It converts the information into JSON format. 4. It adds the expense data to Google Sheets. 5. The workflow runs every six hours, every day. 6. I spend a couple of minutes reviewing Google Sheets to make sure everything is working properly and that my expenses remain within budget.

Tools used
Industry
3

Built a skill-driven AI workflow that takes projects from idea and scope discovery through runbook execution and durable documentation

I use reusable AI skills rather than relying on one long prompt or previous chat history. I start by describing the project in plain English and invoking a project-kickoff skill. It creates a live project specification containing the objective, scope, constraints, acceptance criteria, concerns, and next actions. For larger or more ambiguous work, I can opt into a scope-discovery skill. AI guides me through one important decision at a time, explains the trade-offs, recommends a sensible default, and records each accepted decision until the project is ready to implement. When delivery involves several dependent or risky steps, I can use a runbook-design skill. AI converts the agreed scope into a checkpointed implementation plan with validation, rollback, and clear points where my approval or testing is required. AI then executes the runbook, builds the solution, performs automated checks, and records what actually happened. I mainly provide direction, answer business or product questions, and complete the human acceptance checks that AI cannot genuinely perform itself. The skills live inside the project repository alongside the code, decisions, runbooks, and documentation. Codex only links to them at runtime, so the repository remains self-contained and does not depend on my local setup or previous conversations. This also makes the workflow portable. Another capable AI agent or a human engineer can read the repository, understand how the project should be managed, and continue the work without reconstructing everything from chat history. Step-by-step: 1. I describe the project in plain English and invoke the project-kickoff skill. 2. I use the scope-discovery skill for larger or more ambiguous work, working through one decision at a time until the project is ready to implement. 3. I use the runbook-design skill when delivery involves dependent or risky steps, creating a checkpointed plan with validation, rollback, and approval or testing points. 4. AI executes the runbook, builds the solution, performs automated checks, and records what actually happened. 5. I provide direction, answer business or product questions, and complete the human acceptance checks AI cannot genuinely perform. 6. I keep the skills, code, decisions, runbooks, and documentation together in the project repository so the workflow remains self-contained and portable.

Tools used
Industry
#agenticworkflow#aiassisteddevelopment#aiskills
3

Create Secure AI-Resistant Assessments with TypeWriter

Teachers give assessments on devices provided to students, but students can use AI to cheat. I built TypeWriter to bring the level of security found in tests like the ACT and SAT to everyday assessments. Teachers can create assessments from existing materials, post them in a locked environment, and grade submissions and provide feedback on the same website. I built TypeWriter as a high school teacher, and it is free for teachers. Step-by-step: 1. Teachers create an assessment using their existing materials in TypeWriter. 2. They post the assessment in TypeWriter’s locked environment. 3. Students complete the assessment on the provided devices. 4. Teachers grade the assessments and provide feedback on the same website.

Tools used
Industry
#education
typewriter.education https://typewriter.education
4

Adjust EV Charging to Match Home Solar Output

I have an electric car, solar panels on my home, and a home battery. On cloudy days, charging my car drained the battery and drew power from the grid, which I wanted to avoid. I used Claude to write code for my EV charger and inverter. The code monitors my solar panels’ output and adjusts the charging speed so the battery still receives some charge without drawing power from the grid. Step-by-step: 1. I identified that charging my EV on cloudy days was draining the home battery and drawing power from the grid. 2. I asked Claude to write code for my EV charger and inverter. 3. I set up the code to monitor the output from my solar panels. 4. I configured it to adjust the EV’s charging speed based on that output. 5. I used the adjusted charging speed to ensure the home battery received some charge while avoiding grid power draw.

Tools used
Industries
#ev#evcharging#powerregulation#solar
5

Build a Claude AI Editing Workflow for Murder Mysteries

I write murder mysteries, and like every author, I need an editor to help carry a story from the first raw idea to a finished, publishable script. The trouble is that good editors are rare. The insightful, reliable ones are expensive, and they are often slow. My first murder mystery took the better part of six months to edit. Even after all that time, I still found typos and clumsy sentences that should have been caught during the line edit and proofreading. That is not a criticism of editors; it is the reality of a manual, human-paced process that does not scale to the way I want to work. I do not use AI to write my stories. The voice, plot, and subtext are mine. But line editing and proofreading are different jobs, and that is where I started using AI. Basic paid ChatGPT got me part of the way, but it was not enough. In February, I switched to Claude, and it was a quantum leap: sharper suggestions, better reasoning, and output I could actually trust. I wanted more than a clever assistant. I wanted a process. Rather than wait for the perfect human editor—affordable, brilliant, and available precisely when I needed them—I built my own. My Claude Editor-in-Chief contains my entire editing workflow, along with a few innovations of my own. At its heart is a framework I developed: the Tension Coefficient (TC), ReaderGrip, and StoryDrift. These three lenses show whether a scene is pulling its weight, whether it keeps its grip on the reader, and whether the story is quietly wandering off course. Everything feeds into a dashboard, so I can see at a glance what is working and what needs fixing. The result is a workflow that turns editing from a six-month slog into something that takes a fraction of the time and, more importantly, produces a cleaner, tighter manuscript. I stopped waiting for help and built the editor I always wished I could hire. Step-by-step: 1. I kept the creative work—my story’s voice, plot, and subtext—in my own hands and used AI specifically for line editing and proofreading. 2. I started with basic paid ChatGPT, then switched to Claude in February after finding that it provided sharper suggestions, better reasoning, and output I could trust. 3. I built a Claude Editor-in-Chief around my full editing workflow instead of relying on Claude as a general-purpose assistant. 4. I added my Tension Coefficient (TC), ReaderGrip, and StoryDrift frameworks to evaluate whether scenes are effective, maintain reader engagement, and stay on course. 5. I connected those evaluations to a dashboard that shows what is working and what needs fixing. 6. I use the workflow to reduce editing time and produce a cleaner, tighter manuscript.

Tools used
Industry
#editingfiction#editor#fictioneditor#lineeditor#storyeditor

Repurpose One Video Transcript Into Four Posts With n8n

Content Repurposing System: one transcript into 4 platform-ready posts in 18 seconds. THE PROBLEM Every video cost me two hours turning it into posts for Twitter/X, LinkedIn, Skool and Instagram. The writing wasn't hard. The context switching was. Four platforms, four tones, the same idea rewritten four times. Built during the Skool x Hostinger n8n hackathon, Dec 2025. Still my daily workflow. STACK: n8n on a Hostinger VPS, OpenAI, Google Sheets. 13 nodes. HOW TO BUILD IT Manual Trigger. Swap for a Form or Drive trigger if you want it hands-off. Set node "Set Transcript", one string field: transcript. Leave a real sample transcript in the default value so anyone can hit execute and see output immediately. IF node "Check Transcript", two conditions with AND: transcript is not empty, and {{ $json.transcript.length }} > 50. False branch goes to a Stop and Error node. Four minutes of work. It's why I've never burned 5 API calls on a blank field. OpenAI node "Analyze Content", model gpt-5.4-mini, Simplify Output OFF: You are a content analyst. Analyze this video transcript and extract: Main topic/theme 3-5 key insights or takeaways Target audience Tone (educational, motivational, technical, etc.) Any specific examples, statistics, or stories mentioned Transcript: {{ $json.transcript }} Provide your analysis in a structured format. I don't send the transcript to four writers. I send it to one analyst first, and all four writers read that analysis. This lifted quality more than any prompt tweak: the posts share one reading of the material instead of each model guessing. The stronger model goes here for the same reason. Wrong analysis, four wrong posts. 5-8. Four generators, all gpt-4o-mini, Simplify Output OFF, all wired from Analyze Content's single output. Each pulls the same two inputs: Content Analysis: {{ $('Analyze Content').item.json.choices[0].message.content }} Original Transcript: {{ $('Set Transcript').item.json.transcript }} Then its own rules. Twitter (temp 0.8): hard hook, under 280 chars, one insight, no hashtags. LinkedIn (0.7): 150-250 words, 2-3 line paragraphs, ends on a question, no hashtags. Skool (0.8): 100-200 words, always a numbered list of actionable takeaways, ends by inviting replies. Instagram (0.8): 125-175 words, 5-8 hashtags, plus a detailed "Visual suggestion:" for a designer or image model. LinkedIn needed a tone block after v1 read like a press release: talk like you're with a colleague over coffee, use I and you, never "leverage", "in today's landscape", "fast-paced". Naming banned words works. "Write conversationally" does nothing. Merge node "Collect All Posts", 4 inputs, one generator per index. Aggregate node, mode All Item Data. Puts all four posts on one row instead of four. Code node "Format Output". Reads each generator by node name, each in its own try/catch, so one failure still writes a row. Builds a readable timestamp, a 100-character transcript_preview, and status: 'Generated'. Google Sheets, Append Row, Map Automatically. THE SHEET Seven columns, headers in row 1, named to match the Code node exactly: timestamp, transcript_preview, twitter_post, linkedin_post, skool_post, instagram_post, status. Status is a dropdown: Generated > Reviewed > Scheduled > Published. The system drafts, I decide. FOUR THINGS THAT COST ME HOURS Turn Simplify Output OFF on every OpenAI node. Every expression reads choices[0].message.content, which only exists in the raw response. Leave Simplify on and you get four empty columns with no error explaining why. No title row above your headers. I had a merged title in row 1, headers in row 2. Map Automatically stopped seeing my columns and silently built duplicates beside them. Extend data validation down the whole column (G2:G1000, not G2). I set the dropdown on one cell and every appended row arrived as plain text. Kill markdown in the prompt, not after. I wasted an evening regex-stripping ** in the Code node. The fix was upstream: tell Skool and Instagram plain text only, CAPITALS or "quotes" for emphasis. Zero artefacts since. Post-processing cleanup means your prompt is underspecified. RESULT Two hours per piece became 18 seconds of runtime plus 5-10 minutes of review. I tested 20 transcripts across five content types (tutorial, interview, news, explainer, motivational). Most were publishable with light edits. The failure mode never changed: rambling transcript, vague analysis, four vague posts. Which is exactly why the analyst node gets the better model. Budget 30 minutes to rebuild. The prompts are the product. Copy the structure, then rewrite the platform rules in your own voice. That's what decides whether it sounds like you or like everyone else.

Tools used
Industries
#contentrepurposing#googlesheets#promptengineering#socialmedia#transcript

I capture my thoughts in Apple Notes and process them into my calendar and Obsidian with Claude Cowork

I quickly capture my thoughts in Apple Notes, which serves as my mobile inbox. A scheduled Claude Cowork skill reads those notes through the desktop connector on my MacBook and processes them into my calendar and Obsidian. I organize notes using either the “Forever Notes” method (https://www.myforevernotes.com/docs/journal) or a simple YYYYMMDD daily-note format. Time-log notes record a start time, end time, and description, then save that information to the calendar app. The calendar holds the raw data, which I can extract into a separate Excel sheet if necessary. Planned schedules are checked against existing calendar entries. If an entry is already present, it is highlighted; if it is missing, it is added. This saves me the time and effort of opening a link or editing multiple fields in the calendar app. Random thoughts are filed into my second brain in Obsidian. They are processed with templates, moved to specific folders, or intentionally tagged. Apple Notes, Obsidian, Apple Calendar, and Google Apps are free. The only subscription I need is a Claude account to use Claude Cowork. Step-by-step: 1. I capture thoughts and other information in Apple Notes on my mobile device. 2. A scheduled Claude Cowork skill reads the notes through the desktop connector on my MacBook. 3. I organize the notes using the “Forever Notes” method or a YYYYMMDD daily-note format. 4. I process time-log notes containing a start time, end time, and description, then save them to the calendar app. 5. I check planned schedules against existing calendar entries, highlighting entries that are already present and adding those that are missing. 6. I extract the calendar’s raw data into a separate Excel sheet if necessary. 7. I process random thoughts in Obsidian with templates, move them to specific folders, or intentionally tag them.

Tools used
Industry
2

Multi-Agent AI Workflow for Long-Form Film Creation

I’m sharing “The Architects of Reality,” a short film created as part of an experiment with a multi-agent AI workflow for long-form content creation. Off-the-shelf AI video platforms are brilliant for short clips, but as the duration increases, the challenges compound: character inconsistency, narrative drift, visual discontinuity, and expensive iterations when the output doesn’t match the creative vision. Instead of asking one AI to make a film, I created an AI film crew. Specialised agents and sub-agents take on roles including Director, DOP, Cameraman, VFX Supervisor, Sound Engineer, VO Artist, and Audio Mixer to support the filmmaking process. Creative review and approval are built into every stage, so individual elements can be regenerated before expensive final rendering. This helps optimise tokens, budget, and creative control. It’s been a fun journey building these agents—and even more fascinating to watch the output improve in capability and efficiency as they learn every day. Step-by-step: 1. I set up a multi-agent AI workflow for long-form content creation. 2. I assigned specialised filmmaking roles to agents and sub-agents, including Director, DOP, Cameraman, VFX Supervisor, Sound Engineer, VO Artist, and Audio Mixer. 3. I built creative review and approval into every stage of the process. 4. I regenerate individual elements when they do not match the creative vision, before moving to expensive final rendering. 5. I use the workflow to optimise tokens, budget, and creative control while producing the short film “The Architects of Reality.” 6. I observe how the output’s capabilities and efficiencies improve as the agents learn every day.

Tools used
Industries
8

Build and Ship an iOS App with Persistent AI Project Memory

I am a Mohs surgeon who built and shipped an iOS app without formal software engineering training. The surprising part was not only getting AI to write the code; it was getting AI to remember what it had already done. I built ErgoSherpa because up to 90% of surgeons in my field report musculoskeletal symptoms, while our training fails to address them. I wanted to help surgeons improve their health easily between cases. It is free on the Apple App Store and at ergosherpa.com. The bottleneck was maintaining coherence over time. Many sessions seemed to start from zero: I would re-explain the architecture, then watch a fix quietly undo something I had solved earlier. Three habits fixed that. First, I created persistent project documentation: a `MEMORY.md` index file plus separate topic files for architecture and business decisions. I update them at the end of every session so a new session can read the files first and pick up where the last one stopped. Second, I stopped handing one model the whole job. I use three models and match them to the task. Claude Fable audits only. I open a separate session, point it at the codebase, and require a prioritized checklist with the file path, the problem, and the fix in one sentence—without writing code. A model that did not write the code and has no memory of the project reviews it more honestly than the session that built it. I paste that checklist into a Claude Opus session, which handles the codebase repairs. Claude Sonnet handles routine work such as content updates, image processing, and scheduled maintenance, often from handoffs written by Opus or Fable. Nothing gets implemented on the auditor’s word alone: I have Opus flag any decision that needs human input. This workflow caught a deep-link handler that accepted authentication tokens from any URL and a database policy missing its write-side check. Third, I verify against production, not just the code. Some of the most frustrating parts of the project involved fixes that were correct in the file but wrong on the user’s screen because of a cached asset, a stale database row, or an iOS process that needed a force-quit. I no longer consider anything fixed until I have checked the live app. Step-by-step: 1. I keep a project memory directory with a `MEMORY.md` index and separate topic files for architecture and business decisions, updating them at the end of every session. 2. I open a separate Claude Code session running Claude Fable and prompt it to audit the codebase and return only a prioritized checklist: file path, line number, the problem in one sentence, the fix in one sentence, with no code or commentary. 3. I keep the auditor in its own session with no project history so it reviews the code independently instead of defending work it wrote. 4. I paste the checklist verbatim into a Claude Opus session and have it work from the top down, reading each file and making each change. 5. I tell Opus to flag anything it believes is a false positive instead of implementing it, keeping a human in the loop on key findings. 6. I use Claude Sonnet for routine work such as content updates, image processing, and scheduled maintenance, often from handoffs written by Opus or Fable. 7. I verify every change against the live production site rather than the local files because cached assets and stale database rows can make correct code behave incorrectly for users. 8. I append confirmed lessons and architectural decisions to the project memory so the next session starts from the project’s current state.

Tools used
Industries
#claudecode#codereview#ios#shipping#solobuilder
5

Build a Family Gift-Pool App with Claude and Recover from Data Loss

For years, my family has run a shared birthday fund: five of us contribute a fixed amount for each birthday, while the person whose immediate family is celebrating that month is exempt from paying. Tracking everything in a payment app and a chat thread meant nobody knew the balance, who was behind, or what the next gift would cost. I rebuilt the fund as a small web app with Claude. The app itself isn't the only reason I'm writing this up. The same build is also the demo I use to teach clients and students how AI-assisted product development actually works, including the parts that go wrong. Step-by-step: 1. I described the real rules instead of presenting Claude with a generic app idea: the contributors, the fixed amount per person, the family-exemption rule, and birthdays with birth years so ages could be calculated automatically. Claude built the app as a single, self-contained HTML file with no build step or server, so it opens in any browser. 2. I worked in phases and asked Claude to explain its reasoning at each stage. Instead of using one giant prompt, I added one layer per session: the calculation engine, the setup screen, then reports and CSV export. The explanations made the sessions reusable as teaching material. 3. I required the app to be configured through its own interface rather than by editing code. This was the turning point. Claude removed the hardcoded demo family and added a full setup screen for the group name, contributors, deposits, birthdays, amounts, and alerts. I can now build a family from scratch live in front of a class in about [X] minutes without showing a line of code. 4. I let a data-loss incident shape the next phase. I entered the real family data, then the browser tab closed and the download link I had been using to open the file broke. The data was stored in browser storage tied to that exact URL, and I had no backup. Nothing was recoverable at the time. 5. I turned that failure into features. Claude added CSV export for both reports, CSV import that automatically detects which file it is reading, and a backup reminder that appears in the app's alert banner when the data has never been backed up or has not been backed up for seven days. We also discovered that birth year was missing from the export, which meant a re-import would have silently lost everyone's age. 6. I had Claude test its own work. Before each handoff, it ran a jsdom test suite in a sandbox. By the end, the suite had 46 tests covering the exemption math, empty states, CSV round-trips, and backup logic. Several real bugs surfaced there instead of in front of a class. 7. I made a second version for a different audience. One prompt produced a fully English, left-to-right translation with flipped directional CSS, Latin typography, US date formatting, dollars instead of shekels, and Venmo and Zelle instead of local payment apps. It was a genuinely different build, not a find-and-replace translation. The project took 14 sessions over one week and six hours total. It had no hosting cost, dependencies, or accounts. The data still lives in the browser's local storage on each device. Opening the file on my phone and laptop creates two unrelated pools, so CSV import is the manual bridge between them. There is no authentication or sync; this is a personal record-keeper, not shared infrastructure. The data-loss incident was not a Claude failure. I failed to build a backup path before entering real data. If I did it again, I would add export before adding a single feature. The highest-leverage prompt in the whole project was not a feature request. It was: "let me configure this through the interface instead of the code." That shift turned a static demo into something my family actually uses and my students can watch being built from an empty screen. The broader point is that the failure was the most useful part of the project. A polished demo teaches people that AI makes building easy. Losing the data and rebuilding the safety net around it teaches them what building actually involves—and that is the lesson that survives the workshop.

Tools used
Industries
7

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.

Tools used
Industry
#aivideo#craft#portfolio#webdesign
3

Build a Claude-Powered Nutrition, Training, and Vestibular Symptom Tracker

I’m on a GLP-1 medication that heavily suppresses my appetite, and I’m also managing a bilateral vestibular condition that causes balance and gaze issues. I needed a way to hit my protein and calorie targets despite having a low appetite, track body composition accurately, log vestibular symptoms, connect my actual training data, and get coaching guidance that reflects my situation instead of generic fitness-app advice. I built FuelStrong: three connected apps created with Claude over many sessions. They include a daily tracker for meals, water, energy, and training check-ins; a Progress and analytics module; and a standalone Vestibular symptom tracker. They share a Cloudflare Worker and D1 database backend, with KV for cross-device sync. I describe a feature or problem to Claude in plain language. Claude proposes structural options, I push back or choose a direction, and Claude writes the HTML, CSS, and JavaScript. I program my lifts in Fitbod using an Upper/Lower/Upper split, with an arms-and-back priority and the Build Muscle goal. I export those workouts as CSV and drop them into FuelStrong’s import zone, which parses exercises, sets, reps, and volume into my training history. Custom foods receive macro estimates through a Claude API call routed through my own Worker endpoint. Evolt body-scan data feeds dynamic calorie and protein targets based on BMR × activity factor, minus a deficit, with hard floors instead of static numbers. The Vestibular module intentionally uses open text fields for now, so Claude and I can identify which data matters before formalizing the inputs. Everything syncs across devices through Cloudflare KV. The coaching layer uses a three-tier framework—evidence floor, confirmed operating range, and aspirational target—to drive every recommendation. Two calorie floors, a daily target of approximately 1,000–1,100 kcal and a weekly average of approximately 1,300–1,400 kcal, reflect that chronic under-eating—not missed protein—is the real GLP-1 risk. Muscle mass has remained stable since my February 2026 baseline, so the coaching treats that as a genuine win rather than a plateau. Vestibular-training coaching connects dry-needling focus areas—SCM, suboccipitals, and splenius capitis/cervicis—to gaze-stabilization symptoms, since cervical proprioception substitutes for non-functional vestibular canals. The result is one dashboard that brings together training, nutrition, body composition, vestibular symptoms, and coaching logic. My muscle mass has held stable through it all. Step-by-step: 1. I describe a feature or problem to Claude in plain language, review its structural options, choose a direction, and have Claude write the HTML, CSS, and JavaScript. 2. I use FuelStrong’s daily tracker to record meals, water, energy, and training check-ins, while the Progress and analytics module tracks body composition and related trends. 3. I program my Upper/Lower/Upper workouts in Fitbod with an arms-and-back priority and the Build Muscle goal. 4. I export Fitbod workouts as CSV and import them into FuelStrong so it can parse exercises, sets, reps, and volume into my training history. 5. I route Claude API requests for custom-food macro estimates through my own Cloudflare Worker endpoint. 6. I use Evolt body-scan data to calculate dynamic calorie and protein targets from BMR × activity factor, minus a deficit, while maintaining hard floors. 7. I log vestibular symptoms in the standalone Vestibular tracker using open text fields while Claude and I determine which inputs should eventually be formalized. 8. I sync the three apps across devices through the shared Cloudflare Worker, D1 database, and KV backend. 9. I use the evidence floor, confirmed operating range, and aspirational target framework to guide recommendations, including the daily and weekly calorie floors. 10. I connect vestibular-training coaching to dry-needling focus areas and gaze-stabilization symptoms, then use stable muscle mass since the February 2026 baseline as a positive outcome rather than treating it as a plateau.

Tools used
Industries
3

Turn Meeting Notes Into a To-Do List and Theme Tracker

I wanted a way to turn my meeting and call notes into a to-do list while also surfacing the themes I had been discussing over the weeks and months. That helps me see where my priorities really lie and who I have been discussing them with. I use the free Granola app to record meetings. Claude Code then connects through MCP, pulls in each meeting summary, and creates a web page that runs on my machine. The workflow also creates an `.md` file for each meeting using a standard set of formatting instructions. Now I can track actions, review recurring themes, and stay on top of my to-do list. Step-by-step: 1. I record my meetings and calls in the free Granola app. 2. I use Claude Code to connect through MCP and pull in the meeting summaries. 3. Claude Code creates an `.md` file for each meeting using a standard set of formatting instructions. 4. It creates a web page that runs on my machine and organizes the meeting information into a to-do list and themes. 5. I use the page to track actions, review themes over time, and stay on top of my to-do list.

Tools used
Industry
2

Created a restaurant recommendation site for the top 40 cities in the world

I first wrote a few paragraphs in ChatGPT explaining what I wanted and asked it to create a detailed prompt for Replit to build the site. Then I bought a domain through GoDaddy, and the site was live online less than an hour after I came up with the idea. Step-by-step: 1. I described my idea for a restaurant recommendation site featuring the top 40 cities in the world to ChatGPT. 2. I asked ChatGPT to create a detailed prompt for Replit. 3. I used the prompt in Replit to build the site. 4. I bought a domain through GoDaddy. 5. I launched the site online less than an hour after coming up with the idea.

Tools used
Industry
#chatgpt#food#godaddy#replit#restaurants
3