Status Post 9: Running out of catchy names

Apr 23, 2026

Completed Tasks

User Journey Script

Person Responsible: Gavin

Due Date: April 15

Scene 1

Visual: Paul in bed, phone glowing on his face. The sun moves across the sky outside his window. His feed stretches impossibly long — out the door, down the hall, to the moon.

VO: "Paul loves his phone. Maybe a little too much." VO: "He scrolls through things he doesn't care about, posted by people he barely knows on apps designed to keep him there forever."

Scene 2

Visual: Paul at a hangout, visibly exhausted. His friend walks up, carabiner on his bag. Paul's eyes are half shut.

VO: "Then his friend noticed."

FRIEND: (to Paul) "Dude, you look terrible." PAUL: "...I haven't really been sleeping." FRIEND: "You should delete that app. Try Loam." (taps carabiner)

Visual: Friend pulls up his Loam profile. Paul leans in, suddenly a little more awake.

VO: "And just like that, Paul was awake."

Scene 3

Visual: Paul setting up his profile, answering prompts, adding friends, building branches.

VO: "Setting up Loam took about three minutes. He answered a few prompts, added his friends, and made his first branch." VO: "No algorithm. No ads. Just... his people."

Scene 4

Visual: Paul opens the app the next day. He reaches the end of the feed. He pulls to refresh — nothing new. He stares at the screen.

VO: "The next day, something strange happened." VO: "He ran out of feed."

Visual: Paul shrugs, opens the camera. Posts a fridge shelfie.

PAUL: (typing) "What should I cook?" Visual: Comments flood in with suggestions. Paul laughs.

Visual: Paul posts something that goes completely wrong — blurry, badly lit. Comments roast him lovingly.

VO: "So he just... started posting. The good, the bad, and the fridge."

Scene 5

Visual: Paul posts "anyone want to hang out?" — cuts to photos of them actually hanging out, commenting, laughing.

VO: "Loam didn't fix Paul's sleep schedule." VO: "But it did remind him why he liked his phone in the first place."

End card - Loam logo

VO: "Loam. Where the scroll ends."

User Journey Storyboard sketches

Person Responsible: Ella

Due Date: April 15

Dev Updates

Person Responsible: Ella and Max

Due Date: April 23

Feed API (/api/feed/+server.js)

  • Replaced auth.getUser() with auth.getSession() — eliminates an outbound HTTP call to Supabase's auth server on every feed load

  • Moved status: 'approved' filter into the DB query (was filtering all statuses in JS)

  • Removed 3-level sequential fallback query chain

  • All secondary queries (profiles, reactions, branch ownership, branch membership) now run in Promise.all — parallel instead of sequential

  • Reactions are now bundled into the feed response — eliminates N individual /api/posts/[id]/reactions calls on page load (was 1 invocation per post)

Reactions API (/api/posts/[id]/reactions/+server.js)

  • auth.getUser()auth.getSession() in both GET and POST

  • Removed separate profiles round-trip — reactions summary only needs user_id + emoji, not author display names

  • Returns aggregated { emoji, count, reacted_by_viewer } instead of raw rows

  • Added Cache-Control: private, max-age=10, stale-while-revalidate=30 response header

Comments API (/api/posts/[id]/comments/+server.js)

  • auth.getUser()auth.getSession() in both GET and POST

  • Top-level comments and replies now fetched in parallel (replies scoped to post_id instead of waiting for comment IDs)

  • Profiles + connections queries now run in parallel

  • Two separate connections queries (requester/receiver) merged into one with compound .or() filter

Feed page (+page.svelte)

  • Consumes pre-bundled reactions from feed response — fetchReactions() is skipped for all posts where reactions were already returned

Other Changes

  • Direct to cloudinary image transformation, still does a local check, next will be to node transform first then cloudinary. - image processing size limit brought up to 10mb

  • 10 posts to a profile limit

  • upped the comment input font size to 16px, should prevent the zoom from happening on mobile.

  • Updated New reaction visibility design

  • Added anonymous comment visibility

Social Posts

Person Responsible: Chem and Enoch and Max

Due Date: Ongoing

We've started posting reels and loam-style posts, we also posted our initial "about loam" posts.


Open Tasks

User Journey Assests

Person(s) Responsible: Whole team

Due Date: ongoing

We're building out our assets for the User Journey

Social Posts

Person Responsible: Chem and Enoch and Max

Due Date: Ongoing

We're finishing up an intro to loam reel, enoch is working on other reel content as we continue the current formats for posts.

MVP Interviews

Person Responsible: Dom

Dom has been conducting MVP interviews over the last couple weeks, a few more to come.

https://docs.google.com/document/d/1vCaT3krhaDJVhep53ax1k-Km09j3dhNbbzPrC6jcAXE/edit?tab=t.0

Notifications Copy + Design

Person Responsible: Joe

Due Date: April 24

  • Draft for a daily bundle

  • draft for how we communicate prompts

  • Designs for how they would look in an email and in app

Pre-Presentation Survey

Person Responsible: Dom

Due Date: April 24

We are preparing a survey that can be sent to active users before the presentation to get updated statistics

Privacy Policy / Terms of service

Person(s) Responsible: Max

Due Date: April 16

Finalizing the privacy policy and terms of service. Require making a loam email that users can contact for support. Also requires adding a DMCA takedown process. This is a low priority item.

https://docs.google.com/document/d/19mT2rZI0tXf_tP8kqETRBja1sj_iJjyD/edit

Launch Party Poster

Person(s) Responsible: Chem Enoch

Due Date: ongoing

  • Senior project fund-raiser 

Location: Florida Philadelphia (DM for address)

  • Date: Saturday, May 16

  • Time: 2pm doors music at 3pm

  • Lineup

    • Double Pump

    • Laurel & Yanny

    • Charnews

    • DJ Null

    • $10 notaflof

Food and Drink

    • Free caribiner

Landing Page

Person(s) Responsible: Max

Due Date: April 24

Finishing this up.

T-shirt design

Person(s) Responsible: Chem and Ella

Due Date: April 24

Chem and Ella are working on a way to bleach t-shirts to make our our designs.

Exploring post and profile customization

Person(s) Responsible: Dom

Due Date: April 30

We got some feedback that users want more customization with what they can post, Dom is exploring what that could look like.

New Tasks

Presentation Planning

Person(s) Responsible: Whole team

Due Date: ongoing

  • start printing carabiners

  • look at ordering shirts/stickers/other material

  • Plan out what information we want on the presentation

User Journey Scene Building

Person(s) Responsible: Chem and Ella

Due Date: April 30

Build out the different scenes with our vectorized assets

User Journey Animation

Person(s) Responsible: Dom

Due Date: April 30

Meetings

2026-04-16, In Person

Whole Team

Agenda
  • Animation asset brainstorm

  • Social media check-in and brainstorm

  • Dev check-in and planning

  • MVP interview check-in

2026-04-022, Zoom

Whole Team

Agenda
  • Assignment check in

  • Dev walk through / planning

  • T-shirt review

  • Social media planning

Project

About

Blog

Contact

Resources

GitHub

Team

Status

Create a free website with Framer, the website builder loved by startups, designers and agencies.