What it is

They say the internet made the world smaller. But when friends move, for college, work, or family, somehow it still feels a little too big. Shared rituals turn into occasional phone calls, "let's get dinner" turns into "remember when", and Instagram becomes the news source for their lives. Even in the era of AI and social media, there's still a missing place for friends to come together.

Loop is a weekly ritual. You sign up, create a group, and invite your circle. At the start of each week, every member gets a blank canvas for journal entries, photos, and voice notes. All freeform with no pressure. You can't see your friends' contributions yet; just a small counter showing how many things they've shared.

On drop day, the AI reads everything across the whole group and assembles an actual magazine, with cover story, features, AI images, personalized horoscopes, a crossword where the clues are inside jokes, a quiz, and a news sidebar relating pop culture news to the members' week. Then it emails the link to every inbox at once.

What they wrote in private becomes something they read together, for the first time, at the same moment. The canvas clears the next day, but the issue stays in the archive, for the group to come back to the week they lived together.

How I built it

I read the MeDo documentation early on, which recommended a build order (UX → Features → Database → UI), so I iterated over my first prompt for a while before setting off MeDo. The prompt described the overarching goal of the app and important product decisions, such as private contributions until drop day. MeDo then generated a PRD, which later conversations referenced for grounding context.

Each functional component of the app was built with a detailed prompt. I started prompts with a description of the goal, a set of instructions, some guardrails, and a final QA checklist. With well structured prompts, MeDo stayed aligned with the goal even for long tasks on Fast Mode, and usually did not stop iterating until the checklist items were complete. Most of the work became refinement instead of corrective passes, and any UI tweaks that were needed, I could just use the GUI editor.

The crossword put that discipline to the test. Word candidates come from names, places, and events members actually mentioned that week. A custom greedy layout algorithm places them in the grid, and if the first pass places fewer than five words, it re-prompts the AI automatically with tighter constraints and retries. One prompt had to hold two different problems simultaneously: a constrained placement problem with retry behavior, and clue generation that required understanding what’s actually funny or meaningful to a specific group of people.

Where MeDo shone

Members contribute in fragments, a photo from Tuesday, a voice note from midnight Thursday, without seeing what anyone else has added. Getting editorial coherence out of that required a phase boundary.

The 12-step magazine generation pipeline runs across parallel and sequential phases, with live progress updates and sneak peeks for the client. MeDo broke this down into seven Supabase edge functions. It opens with three parallel jobs: Web Search pulls what's trending in pop culture, each member's entries get mapped into an emotional arc, and crossword and quiz material gets extracted.

When those jobs finish, their outputs merge into a typed editorial brief: cover subject and angle, group-wide feature theme, two short-mention moments, member of the week, news query, and per-member narrative summaries. Every downstream writing step uses that brief as its source of truth.

For groups with past issues, the brief also includes a summary of the last few. The editor has memory of what the group has lived through. A member who was anxious about something three weeks ago and resolved it this week might find that thread on the cover. A crossword clue might pay off a joke from two issues back.

The cover story connects to what the group actually talked about, what's happening in culture that week, and where the emotional through-line lands. The news sidebar query gets picked by the planning step based on the cover angle. Horoscopes get blended with each member's actual entries.

Summarize, then plan, then write: that phase boundary was the hardest architectural decision, and its implementation is where MeDo impressed me the most.

Under the hood

Loop's functionality hinges on six MeDo plugins, with some used by multiple components of the app.

Speech-to-Text transcribes voice note entries when logged. The transcription goes to a database table later read by the generation pipeline, while the audio files themselves live in Supabase object storage alongside photo entries.

Web Search runs twice. At the start of generation, it pulls what's trending in pop culture, feeding the editorial planning step and influencing cover story framing. It runs again per member to retrieve live horoscope data for their star sign, which the LLM blends with their actual entries.

Large Language Model is the editor. It reads the planning outputs and writes the magazine: cover story, features, horoscopes, quiz, crossword clues. The prompt positions it as an editor making selections, not an assistant responding to a request.

News grounds the sidebar in a real headline. The query is chosen by the planning step based on the week's cover story angle, so the news section connects to what the group actually talked about rather than pulling something generic.

Kling Image Generation runs cover art and feature art asynchronously while other pipeline steps complete. Each job submits to Kling's async API, receives a task ID, and polls for completion while other steps finish. Member photos get placed first; AI-generated images fill remaining slots.

A custom email plugin was built by giving MeDo the API schema for Resend in a single prompt. It fires the finished issue to every member simultaneously the moment assembly is done. That's the moment Loop is built around.

The goal throughout was to build something that felt less like software and more like an object. Friends contribute freeform all week, a stray thought, a photo, or a voice note. Loop reads all of it and transforms it into an editorial artifact that ties them all together: a way for friends apart to keep friends in the loop.

Built With

Share this project:

Updates

Submission history