@@ -199,6 +199,77 @@ sync so the book refreshes itself instead of waiting for an upload.
199199
200200---
201201
202+ ## Written narrative (500 to 1000 words)
203+
204+ > The submission form asks for a standalone narrative on how the business was
205+ > built and how it runs day to day, explicitly covering what the AI does versus
206+ > what a human does, and the jobs and economic opportunity the business creates or
207+ > enables beyond the founding team, both actual and potential. This is that piece,
208+ > ready to paste. It is about 720 words.
209+
210+ I set out to build an AI that writes marketing for local businesses, and I was
211+ wrong about the problem. Content is free now: any salon owner can get a week of
212+ captions out of a chatbot in the time it takes to make a coffee. I was selling
213+ something the market already gives away.
214+
215+ The real problem was hiding in the retention research. In a salon or barbershop,
216+ nobody cancels. They just quietly stop coming, and the owner finds out months
217+ later, from a gap in the appointment book that nobody had time to notice. About
218+ 40% of new clients are gone within a year. A first-timer who does not rebook
219+ within 30 days has roughly a one-in-five chance of ever returning. A regular is
220+ worth $1,200 to $3,000 a year. That is the largest single profit leak most shops
221+ have, and it stays invisible because it is an absence, spread across hundreds of
222+ people who each keep their own rhythm.
223+
224+ Bloom reads that rhythm. An owner exports a booking-history CSV from whatever they
225+ already use (Fresha, Square, Vagaro, Booksy, even Google Calendar) and uploads it.
226+ Nothing to migrate. Bloom takes each client's own median gap between visits and
227+ measures them against themselves, not against a generic rule. The homepage makes
228+ the whole case with two clients: Aisha and Jane were both last in 44 days ago.
229+ Aisha comes every eight weeks, so she is fine and Bloom stays silent. Jane comes
230+ every four, so the identical gap means she is leaving. Any tool that flags "no
231+ visit in 60 days" gets one of those two wrong, every time.
232+
233+ ** What the AI does, and what a human does.** This is the part I am most deliberate
234+ about. A rule decides WHO is at risk, because that call has to be exact,
235+ reproducible, and auditable: the output is "she is worth $1,295 a year and she is
236+ leaving," and a model that hallucinated a rhythm would cost a real owner a real
237+ client. Gemini decides WHAT TO SAY, because writing a note that sounds like the
238+ owner remembered someone is a judgement over messy human context, which is exactly
239+ what a rule cannot do and an LLM can. Gemini 2.5 Flash runs on Google Cloud's
240+ Vertex AI for every draft. A separate weekly content agent runs fully
241+ autonomously: it picks the angle, writes, scores its own draft, rewrites when it
242+ falls short, and sends. The win-back is deliberately owner-triggered, one client
243+ at a time, because it sends email in a real business's name to a customer they
244+ care about, and I will not ship unsupervised sending at scale to a stranger's
245+ salon before it has earned it. Every action is logged to a public feed that shows
246+ the agent working without ever naming a client.
247+
248+ ** How it runs day to day.** The owner sets up once. The radar is free, because
249+ showing someone their own losses should not cost anything. When they act, Bloom
250+ drafts and sends from their verified domain, never twice, never to anyone who
251+ opted out. When a client books again, the owner's next export proves it, and Bloom
252+ counts the save from their own data rather than claiming it.
253+
254+ ** Jobs and economic opportunity beyond me.** Today the honest answer is that Bloom
255+ has no employees but me. What it creates is not headcount, it is protected
256+ livelihood. A neighbourhood salon runs on thin margins and a handful of chairs,
257+ and every regular who drifts away unnoticed is revenue that would otherwise pay a
258+ stylist. When Bloom keeps 20 clients a year who would quietly have left, worth on
259+ the order of $25,000, that can be the difference between a shop cutting a chair and
260+ keeping one, or hiring the next. The economic opportunity Bloom enables is the
261+ retained revenue base that local service jobs actually depend on, for people well
262+ beyond any founding team: the stylists, barbers, and front-desk staff whose hours
263+ exist only if the shop stays full. As Bloom grows, its own hiring follows the same
264+ logic, salon-partnership and customer-success roles whose whole purpose is keeping
265+ more of those chairs occupied. I would rather state that plainly, actual versus
266+ potential, than inflate a number I do not have.
267+
268+ ** Where it honestly stands.** The product is live in production. The gap is
269+ arms-length paying customers, which I am closing now by getting it into real
270+ salons. That is the one thing engineering cannot do for me, and it is what I am
271+ spending the last month of the hackathon on.
272+
202273## The uniqueness claim
203274
204275The one sentence to gate every scope decision against, and the one to lead with in
@@ -598,7 +669,37 @@ Upload a simple P&L (template: https://bit.ly/4w3DvwL) reflecting the figures
598669above: revenue $0 net, expenses ~ $3, so a small net loss of about $3 for the
599670period. Formats allowed: pdf, xls, xlsx, csv, png, jpg.
600671
672+ ### Revenue proof to attach (from the official email)
673+
674+ The form wants documentary proof, not just the figures above:
675+
676+ - ** Stripe export or bank statement.** Export the Payments list from the Stripe
677+ dashboard (Payments to CSV) covering the period. It will show the two July test
678+ charges and their refunds, which matches the $0-net story exactly. That honesty
679+ is an asset, not a liability: it proves the payment path is real and live.
680+ - ** P&L** using the template (https://bit.ly/4w3DvwL ): $0 net revenue, ~ $3
681+ expenses, ~ $3 net loss.
682+ - ** Corporate ID:** none. Bloom is not incorporated; it is a solo project. State
683+ that plainly rather than leaving the field blank.
684+
685+ ### Customer evidence to attach (from the official email)
686+
687+ The form asks for real customer contact info (name, email, phone) and any
688+ testimonials. As of now there are none, and I will not fabricate any.
689+
690+ ```
691+ [UPDATE: none yet. As real salons come in, add name, email, phone, and any
692+ written feedback here. Even one real owner saying "yes, she is exactly the client
693+ I would have lost" is worth more than any amount of the engineering already done.]
694+ ```
695+
601696### Confirmations
602697
603- - [ ] GitHub repo shared with testing@devpost.com and judging@hacker.fund
698+ - [ ] GitHub repo public, or shared with testing@devpost.com and judging@hacker.fund
699+ - [ ] 3-minute (or shorter) video, public on YouTube/Vimeo, showing the agent live
700+ - [ ] Written narrative pasted (see the 720-word section above)
701+ - [ ] Revenue proof attached (Stripe export/bank statement + P&L)
702+ - [ ] Product evidence attached (see docs/EVIDENCE.md + a Vertex AI usage screenshot)
703+ - [ ] Demo URL and password put in the private notes-to-judges field
604704- [ ] No single customer represents more than 40% of revenue (true: revenue is $0)
705+ - [ ] Related-party revenue disclosed (two refunded founder test charges, $0 net)
0 commit comments