Back/How I AI
How I AI

Farm-to-Table Software: How I Built a Thanksgiving Party Hub with Lovable & Hacked Recipes with ChatGPT

In this special pre-Thanksgiving episode, I'll show you my personal workflow for vibe coding a custom party hub with Lovable, Midjourney, and Google Fonts. Plus, I'll share my favorite AI trick for transforming any messy online recipe into a clean, kid-friendly format using ChatGPT.

Claire Vo's profile picture

Claire Vo

November 19, 2025·7 min read
Episode outline

I built a personalized Thanksgiving party hub because hosting a big holiday meal gets chaotic fast. Between tracking RSVPs, coordinating dishes, managing dietary restrictions, and trying to follow recipes with flour-dusted hands, the usual tools never quite fit how my family actually gathers. So instead of interviewing a guest, I decided to bring you into my kitchen and my code editor and show you the AI workflows I use to solve those very real problems.

In this episode of How I AI, I build a party-planning app in Lovable, then reformat a recipe for easier cooking with ChatGPT. The Lovable workflow starts with a functional but generic draft, then adds a more personal visual system with Google Fonts and a Midjourney header. The result is what I call "farm-to-table software": small software shaped around how my family actually hosts.

The recipe workflow solves a different problem. I turn a cluttered recipe into numbered instructions with the relevant measurements inside each step, so I do not have to scroll between the ingredient list and the method while cooking with my kids.

Both workflows begin with a specific annoyance and improve through iteration, taste, and details drawn from real life.

Building a "farm-to-table" Thanksgiving party hub

How to Build a Custom Party Planning App with Lovable and Midjourney: Build a small event hub that centralizes guests, dishes, recipes, and photos, then personalize it with intentional typography and art while making dietary information clear and usable.

I wanted a central hub for Thanksgiving: invites, potluck coordination, recipes, and a shared photo gallery all in one place. Standard e-vites always feel a little transactional to me, so I used Lovable to vibe code something that felt more like hosting at home.

The initial prompt in Lovable

I started with a very simple prompt. Just the core functionality I knew any large holiday gathering would need.

Build a Thanksgiving party hub for managing invitations, dishes, shared recipes, and photos.
A 'Thanksgiving Party Hub' web application interface, demonstrating its features like guest list management and recipe sharing, alongside Lovable's AI prompting capabilities for customization and functionality.

The first result worked, but it looked generic: a stock-style photo, awkward spacing, and little personality. It was a functional starting point, not a design I wanted to keep.

Choosing typography with Google Fonts

Typography is one of the fastest ways to improve a design. People sometimes assume vibe coding tools are closed systems, but most of them, including Lovable, work well with Google Fonts.

I use resources like Canva's Font Combinations page for inspiration. For this project, I wanted something cozy and handwritten, so I picked a pairing that reminded me of a family recipe card:

Once I picked the fonts, I gave Lovable a very direct prompt to implement them:

I want to use Google fonts. Homemade apple for the headlines and railway for the body.
A user instructs an AI to update the design of a 'Thanksgiving Party Hub' web application, specifically requesting 'Homemade Apple' for headlines and 'Raleway' for body text from Google Fonts. The AI's generated web app UI is displayed in the preview pane.

That one change made the app feel warmer and more personal. Lovable also lets you inspect the generated files, so I could see the Google Fonts call, Tailwind configuration, and CSS updates in context. Reading those changes is a useful way to learn the front-end patterns behind the design.

Designing a custom header with Midjourney

Next, I replaced the generic header image in Midjourney. I often start with a style reference shared by another creator, then adapt the subject and composition for my project.

I found a whimsical paper-cutout style from a creator named Michael Ramone and adapted the prompt for a Thanksgiving scene.

geometric paper, autumnal harvest table
A screenshot of the Midjourney web interface showing the results of an AI image generation, including clear whimsical paper-style images of autumnal harvest tables and the specific prompt parameters used (e.g., 'Geometric Paper autumnal harvest table ar 2:1 sref 419519381 style raw sw 100 v 7 stylize 300').

The first image was square, but the app needed a wide banner. I reused the prompt, removed the fixed aspect-ratio parameter (--ar 1:1), and selected a wide 2:1 format in Midjourney. That produced the Tuscan-hills-meets-California-Thanksgiving look I wanted.

Once I had the image I wanted, I brought it back into Lovable with a multi-part prompt to redesign the header:

Here is the image I want for the background. I also want the title of the page to be Claire's Thanksgiving Feast. And all the copy to be more personalized around Claire hosting Thanksgiving at home.
An AI assistant helps refine a 'Claire's Thanksgiving Feast' web page, showcasing a user's prompt for header improvements and the resulting personalized design with a Midjourney-generated image.

This one change took the app from a generic template to something that truly felt like my party hub.

Adding custom features for real-life needs

This is where vibe coding becomes genuinely useful. My family has vegans, gluten-free people, dairy-free people, and people who want to eat absolutely everything. Most invitation apps do not handle that complexity well, so I added custom dietary-restriction features directly into the app.

The wording here mattered a lot because I wanted a specific UI behavior:

Let's add dietary preferences, restrictions to the guest list. Let's start with a multi-select of the most common ones.

The term multi-select told Lovable I wanted checkboxes rather than a single text field. The resulting form let guests choose more than one option and included common entries such as vegan, gluten-free, dairy-free, and no restrictions.

A web application demonstrating guest list management for a 'Thanksgiving Feast', featuring dietary restriction selections, alongside an AI-powered chat discussing the implementation of these multi-select dietary preference features.

Then I connected those dietary preferences to the dish-coordination flow. I asked Lovable to reuse the tags on dishes so guests could see how each dish had been labeled. These tags help communicate preferences, but hosts should still confirm ingredients and cross-contamination risks directly with guests.

Reuse these dietary-preference tags on dishes so people can label common allergens and ingredients.
A web application demonstrates how to manage dietary and allergen tags for dishes in a Thanksgiving feast planner, supported by an AI assistant providing instructions and updates in a chat interface.

The app now connected guests, dishes, and dietary needs in one lightweight data model. That is the value of a custom tool here: I could shape the invitation flow around the details my family actually needs.

Reformatting recipes with ChatGPT

How to Reformat Any Online Recipe for Easy Cooking with a Simple ChatGPT Prompt: Turn an authorized recipe into a cook-friendly working copy with numbered steps and inline quantities, while preserving the source ingredients, temperatures, timing, and attribution.

I love cooking with my kids, but most online recipes are formatted terribly for actual cooking. Ingredients live at the top, instructions live at the bottom, and you spend the entire time scrolling with messy hands trying to remember measurements. My fix is simple: I use ChatGPT to completely reformat them.

Grab your recipe

I started with one of my favorite Thanksgiving recipes: Polenta and Sausage Stuffing. It's gluten-free, incredibly good, and perfect for a crowd. I copied the entire recipe page, including the intro text, ingredients, and instructions.

The reformatting prompt

Next, I pasted everything into ChatGPT with a very specific formatting prompt. The goal was not creativity. It was usability.

A detailed AI prompt for reformatting a recipe is displayed in the ChatGPT interface, demonstrating a practical application of large language models for structured data generation.
Here is a recipe. Please format it into a different structure.
Title
Description
Cook time
Ingredients
Servings
Instructions
For instructions, I want them clearly in steps, step one, step two, et cetera, and I want to make sure both the ingredients and the measurements are in line, so I do not have to go back and reference the ingredients list.

The key instruction is the final one: explicitly tell the model to embed ingredient measurements directly into each cooking step.

The result, a cook-friendly format

A clear view of the ChatGPT interface displaying a well-formatted recipe for 'Polenta & Sausage Stuffing', complete with description, servings, cook time, and a detailed list of ingredients. The screenshot highlights ChatGPT's ability to generate structured content like recipes, with the podcast host visible in the corner.

ChatGPT returned numbered instructions with measurements inside each step. Instead of only saying "add water and salt," the reformatted version says, "Bring 6 cups of water and 2 tsp salt to a boil." I still compare the result with the source recipe before cooking, especially quantities, temperatures, timing, and allergen information.

The same preference for clear, kid-friendly instructions shows up in Runaway Pancakes, a recipe site my son and I made. The format lets a child follow one step at a time without repeatedly jumping back to the ingredient list.

The party hub worked because it was personal

The party hub improved when I added my own design choices and features based on how my family hosts. The recipe became easier to use when ChatGPT reorganized existing information around the physical act of cooking. In both cases, the useful result came from a narrow problem, a rough first draft, and specific iteration.

A good personal AI project does not need to be broadly useful. Start with a recurring annoyance in your own home, build the smallest version that helps, and keep the judgment calls for yourself.

Sponsors

Thanks for supporting How I AI

WorkOS

Make your app enterprise-ready today

Build your next product with ChatPRD

Turn an idea into a PRD, user stories, and a plan.

Try ChatPRD free

Start shipping
better products.

Join 100,000+ product managers who use ChatPRD to write better docs, align teams faster, and build products users love.

Free to start
No credit card
SOC 2 certified
Enterprise ready