Founder profile · Toronto, Canada
Tommy Adeniyi
Founder & builder, webfaCeMEdia
I design, build and operate software products end-to-end — from the infrastructure they run on to the marketing sites that sell them. webfaCeMEdia is a one-person product studio with its own cloud platform, its own site builder, its own agent framework, and a portfolio of vertical products for Canadian trade, wholesale and service businesses. Everything on the following pages is live and built by me.


- 19products live
- 3platform layers
- 11client sites on Bookings
- 63MCP tools published
How it fits together
- webfaCe Plannerbuilds the site
- WebFacePressis the site
- webfaCe Agentruns the follow-up
- webface.cloudhosts the apps
- ProductsTrade Counter, Assistant, Desk, Siglore, Silotour…
LiveCore platform2026
webfaCe Agent
A business system that follows up, campaigns and posts — one deploy per client.


Notion
Google Sheets
Gmail
Google Calendar
Brevo
Facebook
Instagram
LinkedIn
X
TikTok
Stripe
Any model
What it is
Connects to a client's CRM (Notion, Google Sheets, or both), scores every contact by staleness, drafts personalised follow-ups, and sends them from the client's real Gmail address. Runs Brevo email campaigns and drip sequences, and publishes social posts to Facebook, Instagram, LinkedIn, X and TikTok. Image and video studio built in.
How it's built
One codebase, one Convex deployment per client (six in production). Multi-provider model layer, credit-metered billing, Workpool-backed publishing with retry classification, chunked media uploads, and a public MCP surface at mcp.webfacemedia.com so any agent client can drive it.
- Next.js 16
- React 19
- Convex
- Tailwind 4
- Gmail API
- Brevo
- Upload-Post
- Stripe credits
- Sentry
- Vercel
Why it matters
Small businesses lose deals in the gap between 'we spoke' and 'we followed up'. The Agent closes that gap on autopilot and turns one operator into a full marketing desk. Each client is a recurring deployment, and the same codebase serves every one of them.
LiveCore platform2025
webfaCe Planner
Describe the business, pick a design, go live — multi-page sites from a conversation.


webfaCeMEdia
Sanity
Vercel
Google
Clerk
Any model
What it is
A conversational site builder. It captures a business's content and brand, seeds a project, generates a set of full design previews from a model lab, lets the owner pick a direction, and deploys the finished multi-page site into the managed fleet with Bookings and analytics already wired.
How it's built
Every generated site is a fork of WebFacePress (next page). The preview lab scores models on real pick-rate versus cost per generation, and the Qualifier prospecting tool can queue a redesign for any lead automatically — the preview URL comes back into the CRM.
- Next.js
- Sanity
- Convex
- Clerk
- Vercel
- OpenRouter lab
- Qualifier bridge
Why it matters
Turns web design from a weeks-long service into a same-day product with a clear price. Sites become tenants of the studio's own infrastructure, so every launch adds recurring hosting, booking and analytics revenue instead of a one-off invoice.
LiveCore platform2025
WebFacePress
The base template every client site clones from — 35 modules, commerce, booking, chat.



Sanity
Next.js
React
Tailwind
Vercel
Google Calendar
Notion
Snipcart
SendGrid
What it is
The master demo is the canonical WebFacePress site. Page-builder modules, e-commerce, Google Calendar booking, an on-site chat assistant, a dynamic form generator, quizzes and assessments, blog and vlog content — all editable by the client in a visual studio.
How it's built
One maintained fork; each client deployment points at its own content dataset and deploys to Vercel. Improvements land in the template once and roll out to the fleet. Booking runs through webfaCe Bookings in dual mode; content automation via webhooks.
- Next.js 16
- Sanity 5
- React 19
- Tailwind 4
- TypeScript
- Snipcart
- SendGrid
- Vercel
Why it matters
The studio never starts a site from zero. The template carries the features clients actually pay for — booking, commerce, lead capture — so the margin is in configuration, not construction.
LiveProductsJuly 2026
webface.cloud
My own PaaS: a database-backed app with HTTPS in about six seconds.

webfaCeMEdia
Database
Go
GitHub
Caddy
DigitalOcean
Cloudflare
What it is
A platform that provisions an isolated database-backed app per tenant — auth, database, file storage and an admin — plus custom domains, git push-to-deploy, and an operator console. Vertical products in this deck (Trade Counter, Bookings, AutoApply, FitBase) are tenants on it.
How it's built
Single Go control plane and a per-app template system (wholesale, dispatch, custom binaries). Full-text search, analytics tracking and brand theming are built in as library packages. Managed through a CLI, a web console and an MCP server.
- Go
- Managed database
- HTMX
- Caddy
- systemd
- DigitalOcean TOR1
- GitHub App
- MCP server
Why it matters
Owning the platform means every product ships with hosting, auth and a database at near-zero marginal cost, and client apps become recurring tenants rather than handovers. It is the infrastructure moat under the whole portfolio.
LiveProducts2026
NoForm
Your users will stop filling out forms — sign-ups done by AI agents.



Convex
Clerk
Next.js
Brevo
Any agent
What it is
NoForm makes any app sign-up-able by AI agents through the auth.md protocol: the app hosts one tiny file, an agent reads it, registers the user, and the person claims the account with their email and a one-time code — a real, verified account they never filled a form for. NoForm proves it by onboarding its own visitors exactly this way.
How it's built
The sign-up ceremony is register → claim → verify, with per-IP and per-tenant rate limits, monthly caps and an audit log. Agent sign-up provisions a real user in the app's auth system and signs the browser in; a 24-point acceptance suite runs the whole ceremony end to end.
- Next.js 16
- Convex
- Clerk
- Tailwind 4
- auth.md protocol
- Brevo OTP
Why it matters
Agents are becoming the ones doing the signing up — and every form is a wall to them. NoForm is a bet on the agent era's front door: apps that adopt it get users delivered by agents, governed and email-verified, while everyone else still asks for a form.
LiveProductsAug 2026
webfaCe Assistant
An embeddable site assistant that grew into a trade-counter for distributors.




webfaCeMEdia
Fishbowl ERP
Convex
Vercel
Any model
What it is
A white-label chat assistant any site can embed. For wholesale distributors it does real work: captures leads into the distributor's app, looks up exact SKUs, signs trade customers in by one-time code, reads live pricing and orders from their ERP, and creates estimates.
How it's built
Retrieval over the client's own content, per-hostname embed allow-list, and a tool layer that talks to Fishbowl inventory. Hosted demo pages per client; sold as a Trade Account tier on tradecounter.ca.
- Convex
- Vercel
- AI SDK
- RAG component
- Workpool
- Rate limiter
- Vite + React admin
- Playwright
Why it matters
Distributors run on phone calls and spreadsheets. An assistant that quotes from the real ERP turns a website into a self-serve trade counter — priced at $4,800 setup plus $280 a month.
LiveProductsAug 2026
webfaCe Desk
Named teammates on their own cloud computer — signed in to your tools, working while your laptop is closed.


webfaCeMEdia
Google
WordPress
Stripe
Any model
What it is
Each customer gets a persistent cloud machine in Toronto with a named assistant on it. It signs in once to the customer's tools — email, calendar, browser apps — runs routines, and keeps going after the customer disconnects. Two presets: Desk for Business and Desk for Operators. Desktop apps for Mac and Windows.
How it's built
Built on a forked open agent harness, with a per-customer box provisioned by script, a live desktop stream, Google MCP integration and bring-your-own model endpoints. Maintainable by one person by design.
- Node 22 monorepo
- React
- Wails desktop
- Xvfb + noVNC
- Playwright over CDP
- Caddy
- Stripe portal
- DigitalOcean TOR1
Why it matters
Every SMB wants 'someone to handle it' and cannot hire. A teammate that owns a real computer — not a chat box — is the product they recognise. Priced per seat with a pilot customer lined up.
LiveProductsJune 2026
webfaCeMEdia for iPhone
The client companion app — approve agent work with Face ID, from your pocket.


Apple
Google
Convex
Clerk
webfaCe Agent
What it is
The iOS companion for webfaCeMEdia clients. See your sites, contacts and agent activity in one place; review and approve agent-drafted outreach with Face ID; track new leads as they arrive; and watch site uptime. Full-service clients get the drafts inbox and activity feed; site clients get engagement, leads and uptime at a glance.
How it's built
One binary serves every client tier — what you see is gated by your account. Sign-in with Apple or Google, biometric approval on outreach drafts, live push for new leads, and crash monitoring. Invite-only: no purchases or sign-ups in the app.
- Expo SDK 55
- React Native
- TypeScript
- Convex
- Clerk
- Push notifications
- Face ID
Why it matters
The approval loop is what makes agent-run marketing trustworthy: the agent drafts, the owner taps approve on their phone. Putting that in an App Store app makes the whole platform feel like a service, not a dashboard — and it is one more surface competitors have to match.
LiveProductsAug 2026
Trade Counter
A wholesale ordering portal for Fishbowl distributors — built from a real customer.





Fishbowl ERP
webfaCeMEdia
Database
Go
What it is
Trade customers browse the live catalogue, see their pricing, and place orders that land in the distributor's Fishbowl ERP. Includes a driver PWA, invoice polling and a branded storefront. The Northmark demo is a fully seeded distributor.
How it's built
The Fishbowl client was extracted from the first paying deployment (7,828 live products, read-only sync, then order push). The moat is undocumented ERP behaviour learned in production: session licensing, permission quirks, sort order, silent filter failures.
- Go single binary
- Managed database
- Fishbowl API client
- webface.cloud template
- Static site generator
- GitHub Actions
Why it matters
Fishbowl has thousands of small distributors and no modern trade portal. Trade Counter sells to a defined list with a defined channel — the Fishbowl partner program and referrals — at a setup fee plus monthly.
LiveProductsAug 2026
Siglore
Signature-first contact enrichment — pay only for verified hits.


Gmail
Outlook
Cloudflare
Clerk
Stripe
Any model
What it is
Forward or copy email to a personal ingest address and Siglore parses the signature, then runs a waterfall of enrichment providers to complete the contact. Dashboard, exports and pay-per-hit billing.
How it's built
Email ingest proven end-to-end in production; model-parsed signatures with deterministic validation; queue-backed enrichment so long jobs never hit request limits.
- Cloudflare Workers
- Hono
- D1 + Drizzle
- Queues
- Language model
- Clerk
- Stripe
- Vite + React
Why it matters
Enrichment tools charge $185+ a month whether they find anything or not. Siglore charges per verified contact, which is the pricing a small sales team can actually justify.
LiveProducts2026
AutoApply
Employers run software over résumés. This is the applicant's turn.



Google Chrome
LinkedIn
Indeed
Database
What it is
A Chrome extension plus hosted profile that fills job applications from a single verified profile, with a daily cap and an invite-only hosted tier. Published on the Chrome Web Store.
How it's built
The profile and quota live in the managed database on webface.cloud; the extension does the form-filling in the applicant's own browser session, so nothing has to impersonate the user server-side.
- Vite + React
- Managed database
- Chrome extension
- webface.cloud
- GitHub Actions
Why it matters
A consumer wedge with a clear pain and a clear willingness to pay, running on infrastructure the studio already owns.
LiveProductsAug 2026
webfaCe Bookings
One booking service for the whole client fleet, verified by Google.


Google Calendar
Google Meet
webfaCeMEdia
What it is
A central booking service: each client connects their Google Calendar once, and every generated site gets a booking flow with real availability. Replaced a third-party automation stack across eleven tenants.
How it's built
Google-verified OAuth app with calendar-only scopes. The Planner pre-wires the tenant slug into every generated site, so onboarding is 'connect calendar' and nothing else.
- Go
- Managed database
- Google Calendar API
- webface.cloud
Why it matters
Booking is the feature service businesses ask for first. Owning it means zero per-tenant cost and one more reason a client site stays in the fleet.
LiveProductsSep 2026
webfaCe Classes
Your timetable, booked from your own website — classes, sessions and workshops with capacity.



Any website
Google Calendar
Email
webfaCeMEdia
What it is
A class-schedule booking service for studios, gyms, tutors and workshops: recurring timetables with capacity, one embed on any website, and everything a booker expects — confirmation and reminder emails, calendar links, reschedule, cancel, waitlists with claim links. Operators get their own login, a roster by day or session, closed dates, booking rules and CSV export. Wording adapts per business (class/instructor vs session/host).
How it's built
Multi-tenant on the studio's own platform with scoped operator access, signed manage links, spoof-proof rate limiting, an allow-listed timezone model so daylight-saving can never bite, and a 3 KB embed loader so third-party sites stay fast.
- Go
- Managed database
- JSVM hooks
- SendGrid
- webface.cloud
- Caddy
Why it matters
webfaCe Bookings covers one-to-one appointments; Classes covers everything with a timetable. Together they own the whole booking layer for service businesses on our platform — and it's the schedule surface behind the FitBase gyms offer, designed to sit beside incumbents like Mindbody rather than fight them for the membership system.
LiveProducts2026
WebbFace
A multitenant landing-page engine with a white-label clone kit.


Cloudflare
Clerk
Stripe
What it is
Generates and hosts one-page business sites on the edge. Includes a promo video pipeline and a clone kit so partners can run their own branded instance.
How it's built
Edge-native: no origin server, row-level tenant isolation in D1, and a worker-per-brand deployment model for white-label partners.
- Cloudflare Workers
- Hono
- D1 + Drizzle
- Clerk
- Wrangler
Why it matters
A low-touch, high-volume entry product and a licensing play — partners pay to run the engine under their own name.
LiveProducts2026
BuildBot
Interactive developer education — 32 courses, 155 lessons, code that runs in the page.

Next.js
Convex
Clerk
GitHub
What it is
A learning platform where every lesson has a live sandbox. Courses are plain files on disk — adding one needs no code.
How it's built
Filesystem MDX course catalogue with front-matter validation; Sandpack for in-browser execution; Convex for progress and accounts.
- Next.js 16
- Convex
- Clerk
- Sandpack
- Tailwind 4
- MDX
Why it matters
Content compounds. A catalogue that grows without engineering effort is a subscription product with near-zero marginal cost per course.
LiveProductsJuly 2026
Oloro
Pay, then your software deploys itself.


Stripe
webfaCeMEdia
Go
What it is
A productised offer: the customer picks an app template, pays, and a live instance provisions on webface.cloud without a sales call.
How it's built
Checkout webhook → platform API → app record → live HTTPS. Templates are compiled Go binaries, so a new offer is a new binary, not a new server.
- Vite + React
- Tailwind 4
- Stripe (live)
- Go template binaries
- webface.cloud
Why it matters
Proves the 'software as a purchasable product' motion for the studio: no proposals, no scoping, immediate delivery.
LiveProductsJuly 2026
One Man Company
A free logo generator that feeds the whole product ladder.

Cloudflare
Stripe
Any model
What it is
Visitors generate real vector logos for free, unlock downloads with an email, and are offered a brand kit and the rest of the studio's products below the fold.
How it's built
True SVG output (not traced raster), background stripping at claim time, per-IP rate limits in KV, and a product ladder defined in one content file.
- Cloudflare Workers
- Hono
- Recraft v3 (SVG)
- resvg
- Stripe
- Turnstile
- KV
Why it matters
Top-of-funnel acquisition for everything else in this deck, at the cost of a Cloudflare worker.
LiveProductsJuly 2026
FitBase
A fitness app prototype proving the platform template model.


Database
webfaCeMEdia
SQLite
What it is
Exercise library, visuals and programme tracking on a webface.cloud tenant, with the exercise data and imagery licensed separately.
How it's built
One of the first apps on the platform; the search and analytics packages were proven here before rolling out fleet-wide.
- Go
- Managed database
- webface.cloud
- FTS5 search
Why it matters
Demonstrates how fast a vertical app ships once the platform exists — and holds the fitbase.ca domain for a consumer launch.
LiveProductsJune 2026
Sovereign
Private, always-on agents on your own hardware — the operator's stack behind the products.



NVIDIA
Convex
Any model
What it is
An interactive walkthrough of running private agents on local GPU workstations: model serving, a gateway, retrieval over private data, and the same tool surfaces the hosted products use. Includes a real operator setup guide and rig wizard.
How it's built
Scripted, deterministic scenarios so the pitch never fails mid-demo; a multipage docs build with a generated per-machine setup script served from the same deploy.
- React 19
- Vite
- Tailwind 4
- React Three Fiber
- vLLM + LiteLLM gateway
- Self-hosted Convex
Why it matters
For customers who cannot send data to a hosted model — regulated, on-prem, or simply private — this is the deployment story. It is the internal platform the studio itself runs on.
LiveProducts2026
Silotour
Photos of a space in, an editable 3D walkthrough out.


Cloudflare
Three.js
Clerk
Stripe
Any model
What it is
Upload photos of a room or unit; Silotour rebuilds it as a clean, true-to-layout 3D walkthrough (about 300 KB) that the owner can edit — walls, openings, furniture from a 43-archetype catalogue — and embed anywhere. For real estate, staging and rentals.
How it's built
Every space is a small layout JSON rendered by one shared engine; renders are seed-stable. Long jobs run in a queue consumer; refinement re-renders shots in the user's browser and feeds them back.
- Cloudflare Workers
- Queues
- R2 + D1
- Three.js engine
- TypeScript monorepo
- Clerk
- Stripe
Why it matters
Plan-to-3D is commoditised and photo splats are unedittable; nobody ships editable replicas. Cost per job is cents against $20–75 of hand-built 3D. Priced at $19 for 10 credits with 3 free.
Built · pre-launchAug 2026
Dispatch
Local delivery for retailers the big couriers are not allowed to serve.


Uber
Go
webfaCeMEdia
What it is
A dispatch console, driver PWA and branded tracking page, with pluggable delivery providers (own drivers or Uber Direct where permitted).
How it's built
Ships as a platform template: provisioning a tenant gives a retailer a dispatch back-office and driver app in one step. Provider interface keeps Uber and self-delivery interchangeable.
- Go single binary
- webface.cloud template
- React driver PWA
- Uber Direct provider
- 176 tests
Why it matters
Cannabis and vape retailers in Ontario cannot use Uber or DoorDash — the products are prohibited and the regulator bans third-party delivery. Roughly 1,800 licensed stores must self-deliver, and the ban is the moat.
LiveShared services2026
Shared services
The plumbing every product above shares.

Brevo
Fly.io
SQLite
Convex
webfaCeMEdia
What it is
An MCP server (63 tools) that lets any agent client operate the studio's products; an outreach service with its own reply domain that routes campaign replies back into the CRM; a first-party analytics tracker on nine properties; and fleet-wide full-text search.
How it's built
Each service is built once and wired into Go apps, Cloudflare workers and Convex products alike. Data retention and cleanup jobs keep the databases flat.
- MCP on Fly
- Brevo inbound webhooks
- Insights tracker
- SQLite FTS5
- Convex retention jobs
Why it matters
Shared services are why a one-person studio can run sixteen products: every new product inherits analytics, search, outreach and agent access on day one.