VYBE newsletter app · build progress · as of 18 September 2026

How much of the plan is built

21/70 items built; the team lead can now see the month's run and approve new agents.

This page shows what is actually written and tested, and what is still owed to make it real. The storyboard shows the screens. The asks page is the one place everything needing Steve's answer lives, gathered so nothing is buried at the bottom of a long page and nothing is asked twice.

30.0%27.1%35.7%7.1%
  • BuiltIn the code and passing all 1355 automated tests2130.0%
  • Partly builtStarted, with a specific piece still missing1927.1%
  • Not built3042.9%
  • Not started2535.7%
  • Waiting on a person57.1%
Plan items70

Where the remaining work sits, and how long it should take

The same 70 items, split by the plan's phases. Bar length is the number of items, on one scale for every phase. Time left is an estimate of build time only; the line under it names what else it waits on.

PhaseItemsBuild time left (estimate)
0 · SetupAccounts and checks
7
About 1 dayStarts after the next meeting with Steve
1 · Core appOne agent, no sending
32
1½ to 3 weeksAI steps also need the AI service account
2 · Local eventsEvents near recipients
6
2 to 4 daysNeeds Lofty access
3 · Content typesVideo, listings, broadcast
8
2 to 4 daysStarts after the design pass returns
4 · SendingDelivering the email
13
3 to 6 daysStarts after broker answers and legal review
5 · Scale-upMonthly cycle, 160 agents
4
2 to 4 daysPlus one full monthly cycle, about a month, to prove it
Total build time left (estimate)3½ to 6½ weeks of near-daily build work

Reading the numbers

Full checklist

Every item in the plan with its current status, phase by phase. Within each phase, finished work is listed first.

0 · Setup3 of 7 built

BuiltCloudflare accountDatabase loaded, storyboard live
BuiltAuth0 login accountDevelopment login configured 9/9
BuiltDesign spec saved to the projectDesign and its values saved to the project
WaitingVYBE logins on both accountsBeing set up with Steve
WaitingAI service account (VYBE)Same day as the logins
WaitingLofty accessLimited role, granted by Steve
WaitingMaryland license-board checksStill waiting. The state lookup is behind a CAPTCHA so a person must run it, but the state record cannot answer the real question either: which phone number actually reaches the broker. Tennille has to confirm that. Two steps, not one.

1 · Core app18 of 32 built

BuiltTen compliance checksFair housing, unsubscribe, mailing address, claims, sources, banned words and others
BuiltContent blocks and email assembly
BuiltEmail renderer, per agent and recipient
BuiltDatabase design (29 tables)Loaded on Cloudflare 9/9
BuiltNewsletter section list (18 sections)
BuiltZIP code map data33,791 areas
BuiltDistance mathNot used by anything yet
BuiltAutomated tests and test-quality checker
BuiltLogin and user rolesSign-in with Google (through Auth0), and the app remembers who is signed in
BuiltAgent sign-up and approval queue
BuiltAgent voice profile
BuiltSection settings editorThe section list an agent customizes: on/off, rename, reorder, add a section, all keyboard-usable
BuiltStandard setup shortcutA new agent gets a one-tap option that sets up the standard six newsletter sections at once, instead of starting from an empty list.
BuiltZIP code and interest pickerAn agent can record which ZIP codes they work and the kinds of local events their readers care about; a ZIP code the mapping data does not cover is refused and the message names it.
BuiltHome and sign-in screensSign-in and the agent home screen both work end to end in the local demo
BuiltMonthly intake form
BuiltDraft review screen
BuiltKeeping each agent's data separateChecked from all seven kinds of account; the by-id request is written with the first screen that fetches anything by id
Partly builtAgent's own words kept unchangedRefuses everything until a database decision
Partly builtAgent look-and-feel settingsValues wait on design pass 3
Partly builtSource citations on AI-written sectionsOpinion can still hide a factual claim
Partly builtNo approved compliance pack, no emailRule exists, not connected
Partly builtMailing address footerCheck built, no office addresses
Partly builtImagesMasthead only
Partly builtCall-to-actionOne default sentence
Partly builtApp serverLocal app server gated READY; real routes come with sign-in
Partly builtMarket brief (AI)Code built and gated; never run against the real service
Partly builtDraft writing (AI)Code built and gated; never run against the real service
Partly builtAdmin run view
Partly builtAI cost trackingRecording and limits built and gated; no real call recorded yet
Not startedApprove screens and approval recordDesign written 2026-09-18 (REQ-licence-check-at-approval.md): the requesting agent supplies their licence number, the reviewer gets a one-click link to the state lookup, and the approval records the name, status and expiry date they read, not a checkbox, as a record of that one human check. Not started. Deliberately NOT automatic: the system never re-checks or re-verifies a licence on its own, and nothing in the send path watches licence status.
Not startedAll screens to the approved designLargest single item

2 · Local events0 of 6 built

Partly builtRemoving duplicate eventsDatabase rule only
Partly built20-mile event filter per recipientMath exists, not connected
Not startedArea research setup
Not startedEvent gathering
Not startedLocating each contact on the map
Not startedContact consent info from Lofty

3 · Content types0 of 8 built

Partly builtAgent's long-form section, word for word
WaitingDesign pass 3 (the email, watch and unsubscribe pages)Being commissioned
Not startedThree video options
Not startedYouTube upload (unlisted)
Not startedVideo watch page
Not startedListings entry
Not startedListings shown in the email
Not startedVYBE broadcast writing

4 · Sending0 of 13 built

Partly builtCompliance checks on every version sentChecks exist, no send path
Partly builtNever sending twiceDatabase rule only
Partly builtUnsubscribeLink built; no page or opt-out list
Partly builtSend log and audit logTables only
Not startedSender service
Not startedSending through Lofty
Not startedSend queue
Not startedApproval locked to the exact approved contentDatabase columns only
Not startedFrom line shows the agent as sender
Not startedPDF version
Not startedEmail authentication against spam foldersAdded by review, not in the plan
Not startedBot protection on login and unsubscribeAdded by review, not in the plan
Not startedSmall test send before full release

5 · Scale-up0 of 4 built

Not startedAutomatic monthly cycle
Not startedRun manager (reminders to agents)
Not startedOnboard 160 agents, dashboard, recruiter demo
Not startedFinal end-to-end test

What is on Cloudflare today

Very little. The app everyone has seen in the demos runs on a laptop. Cloudflare holds the storyboard page, an empty copy of the original database design, and an early test copy of the app that is switched off from the internet. Checked directly on the account on 17 September 2026.

On CloudflareStoryboard pageThe page Steve reviewed. Anyone with the link can open it; it is hidden from search engines. Opened fine on 16 September.
On CloudflareStoryboard feedback storageHolds notes typed into the storyboard. It can only receive notes; nothing in it can be read back over the internet.
PartlyNewsletter databaseHolds the original design from 9 September and the 18 section types. No agents, no ZIP code data, and none of the database changes made since then.
PartlyThe app itselfAn early test copy was uploaded on 14 September. It now holds three stored secrets: two for sign-in and one for the AI service. Its internet address is switched off, so nobody can reach it, and the newer work built since that day is not on Cloudflare yet.
Not thereFile storage, send queue, access protection, custom web addressNot set up. File storage and the send queue need a payment method on the account first.