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.

Portrait of Tommy Adeniyi
  • 19products live
  • 3platform layers
  • 11client sites on Bookings
  • 63MCP tools published

How it fits together

  1. webfaCe Plannerbuilds the site
  2. WebFacePressis the site
  3. webfaCe Agentruns the follow-up
  4. webface.cloudhosts the apps
  5. ProductsTrade Counter, Assistant, Desk, Siglore, Silotour…

LiveProductsJuly 2026

webface.cloud

My own PaaS: a database-backed app with HTTPS in about six seconds.

webface.cloud
Screenshot of webface.cloud
Works with
  • 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.

  • Live since July 2026
  • Hosts 5+ products in this deck
  • First real customer app: 7,828 live products

LiveProducts2026

NoForm

Your users will stop filling out forms — sign-ups done by AI agents.

noform.dev
Screenshot of noform.dev
noform.dev
Screenshot of noform.dev
Phone view of noform.dev
Works with
  • 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.

  • Live on noform.dev — onboards its own visitors via agents
  • One hosted file makes an app agent-sign-up-able
  • Integration guides for the common web stacks

LiveProductsAug 2026

webfaCe Assistant

An embeddable site assistant that grew into a trade-counter for distributors.

assistant.webfacemedia.com/demo/northmark
Screenshot of assistant.webfacemedia.com/demo/northmark
assistant.webfacemedia.com/demo/northmark
Screenshot of assistant.webfacemedia.com/demo/northmark
Phone view of assistant.webfacemedia.com/demo/northmark
webfaCe Assistant artwork
Works with
  • 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.

webfacedesk.app
Screenshot of webfacedesk.app
webfaCe Desk artwork
Works with
  • 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.

webfaCeMEdia for iPhone artwork
Phone view of apps.apple.com/us/app/webfacemedia/id6772615053
Works with
  • 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.

tradecounter.ca
Screenshot of tradecounter.ca
northmark.webface.cloud
Screenshot of northmark.webface.cloud
Phone view of northmark.webface.cloud
Trade Counter artwork
Trade Counter artwork
Works with
  • 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.

siglore.com
Screenshot of siglore.com
Siglore artwork
Works with
  • 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.

autoapply.webface.cloud
Screenshot of autoapply.webface.cloud
AutoApply artwork
AutoApply artwork
Works with
  • 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.

book.webface.cloud
Screenshot of book.webface.cloud
webfaCe Bookings artwork
Works with
  • 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.

classes.webfacemedia.com
Screenshot of classes.webfacemedia.com
classes.webfacemedia.com
Screenshot of classes.webfacemedia.com
Phone view of classes.webfacemedia.com/#tour
Works with
  • 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.

webbface.com
Screenshot of webbface.com
WebbFace artwork
Works with
  • 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.

buildbot.cloud
Screenshot of buildbot.cloud
Works with
  • 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.

oloro.ca
Screenshot of oloro.ca
Oloro artwork
Works with
  • 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.

onemancompany.dev
Screenshot of onemancompany.dev
Works with
  • 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.

fitbase.webface.cloud
Screenshot of fitbase.webface.cloud
FitBase artwork
Works with
  • 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.

sovereign.webfacemedia.dev
Screenshot of sovereign.webfacemedia.dev
sovereign.webfacemedia.dev/docs
Screenshot of sovereign.webfacemedia.dev/docs
Sovereign artwork
Works with
  • 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.

silotour.com
Screenshot of silotour.com
Silotour artwork
Works with
  • 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.

Dispatch artwork
Dispatch artwork
Works with
  • 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.

  • Built 11 Aug 2026, 176 tests green
  • ~1,800 Ontario cannabis retailers locked out of Uber
  • Awaiting go-to-market

LiveShared services2026

Shared services

The plumbing every product above shares.

insights.webfacemedia.com
Screenshot of insights.webfacemedia.com
Works with
  • 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.