The dashboard
A single page that pulls together numbers, statuses, and links from tools the operator already uses. Read-only, refreshable, shareable. Replaces a weekly status doc.
When people see what I ship solo, they ask two questions: how is this different from “vibe coding,” and can they do it too. This site is the answer — the stack, the costs, and the workflow behind it.
One operator wearing four hats — product manager, program manager, voice-and-text prompter, rapid prototyper — plus ten layers of stack. Nothing here is exotic. The trick is that these layers are wired together and remembered across sessions, so a single person can move from research to shipped software without handoffs.
One person acting as PM, program manager, prompter, and prototyper. Owns the roadmap, the acceptance criteria, and the ship decision.
The working collaborator. Handles research, planning, drafting, and building. Persistent memory carries context between sessions so nothing has to be re-explained.
A durable workspace per initiative — scoped instructions, files, and a knowledge wiki. Sessions inside a project share context automatically.
A modern client with fast local iteration and clean production builds. Component-based, easy to hand off, easy to extend.
Thin API layer. Just enough server to hold auth, secrets, and integration logic that shouldn’t live in the browser.
Managed Postgres with row-level security, auth, and storage. Production-grade persistence from day one, not a demo database.
Global CDN, preview URLs per push, custom domains, and rollbacks in a click. Deploy is not a project anymore.
Version control, review, and the substrate every other tool talks to. Every change is a commit; every deploy is traceable.
Gmail, Google Calendar, Google Tasks, Google Drive, Google Maps, Slack, Spotify, and more, addressable from the same session that’s writing the code.
Everything ships as a URL. No app-store queue, no installer, no download page. Send a link, watch it load.
Most useful software a company of one actually needs falls into one of four patterns. Pick the shape first, then wire it into the stack.
A single page that pulls together numbers, statuses, and links from tools the operator already uses. Read-only, refreshable, shareable. Replaces a weekly status doc.
A small CRUD app for a workflow that doesn’t deserve a SaaS subscription. Forms, tables, filters, exports. Auth via Supabase, deploy on Vercel.
A single-purpose page: an explainer, a landing page, a brief, a portfolio piece. Fast to build, fast to change, easy to share as a link.
A scheduled or on-demand workflow that reads from one system, decides something, and writes to another. Runs on a cron, reports into Slack or email.
A company of one runs on tools it already pays for. These are the connectors doing real work in the current setup — each one is one auth prompt away from being addressable in the same session that writes the code.
Auth is one click per service. Keys live in a managed vault, not in code, and are never pasted into a chat window.
Approximate monthly spend for a working setup that ships real software. Every line is a tool doing a job; nothing here is speculative.
| Line item | What it does | Monthly |
|---|---|---|
| Perplexity Computer (Max) | Working collaborator, research, agents, memory | $200 |
| Vercel (Pro) | Hosting, previews, custom domains, analytics | $20 |
| Supabase (Pro) | Postgres, auth, storage, backups | $25 |
| GitHub (Pro) | Private repos, actions, review tools | $4 |
| Google Workspace | Mail, calendar, drive, tasks, contacts | $12 |
| Domain(s) | Custom URLs for shipped work | $2 |
| Approximate total | ~$263 / mo | |
Compare to the loaded cost of a single junior hire in any major market. This is a rounding error against the output.
The reason this works is not the tools. It’s the loop. Same six steps, every time, until the URL is live.
State the problem in one sentence. State the user. State what “done” looks like. If any of the three is fuzzy, stop and sharpen before writing code.
Pull references, comparable products, and existing data from the connected tools. The goal is to enter the build with an opinion, not to discover one mid-build.
Write a short brief: pages, key components, data shapes, and the shortest working path to a demo. No polish, no premature hardening.
Scaffold the app, wire the data, hit the happy path first. Ship a working preview URL before adding anything the demo doesn’t need.
Send the preview link to one or two people who match the intended user. Watch what they do, not what they say. Fix the top two things and re-share.
Point a domain at it. Turn on analytics. Log the decisions in the project’s memory so the next session starts where this one ended.
Two recent examples of the loop end-to-end. Different shapes, same stack, same operator.
Ask: a page to send to founders and investors who want to understand how one person ships real software.
Shape: single-page microsite — hero, stack, archetypes, connectors, costs, workflow, examples, vs. vibe coding, contact.
Time to first preview URL: one afternoon.
Result: the site you’re reading. Updated in place as the stack evolves.
Ask: a private daily view that pulls from mail, calendar, tasks, and a couple of data feeds so the morning starts with signal, not inbox triage.
Shape: a small React app with Supabase for state, deployed on Vercel behind auth.
Time to first working version: two sittings.
Result: replaced a daily manual sweep across five tabs.
Vibe coding is a prompt. This is a company of one — an operator, a stack, and a workflow.
| Vibe coding | Company of one | |
|---|---|---|
| Output | A one-shot artifact | A shipped URL with a domain and analytics |
| Memory | None — every prompt starts cold | Persistent project memory across sessions |
| Data | Whatever fits in the prompt | Real database, real auth, real integrations |
| Deploy | Copy-paste code somewhere else | Managed hosting, previews, and rollbacks |
| Iteration | Regenerate and hope | Commit, review, redeploy |
| Operator role | Prompt author | PM, prompter, and shipper |
| Ceiling | Toy demos | Internal tools, dashboards, and public sites in production |
The difference is not the model. It’s the workflow, the memory, and the fact that every session ends with a URL someone else can open.
If you’re an operator, founder, or investor who wants to see this stack running end-to-end — or you want to compare notes on what a company of one can ship — get in touch.
Get in touch